diff --git a/drivers/ide/cmd640.c b/drivers/ide/cmd640.c index 70f0a2754c13eb38b92010b55db25505716f92a5..004243bd84dbd9119be21705ab85b0f793d717fb 100644 --- a/drivers/ide/cmd640.c +++ b/drivers/ide/cmd640.c @@ -695,7 +695,7 @@ static const struct ide_port_info cmd640_port_info __initconst = { .pio_mask = ATA_PIO5, }; -static int cmd640x_init_one(unsigned long base, unsigned long ctl) +static int __init cmd640x_init_one(unsigned long base, unsigned long ctl) { if (!request_region(base, 8, DRV_NAME)) { printk(KERN_ERR "%s: I/O resource 0x%lX-0x%lX not free.\n", diff --git a/drivers/ide/hpt366.c b/drivers/ide/hpt366.c index f94baadbf42474ed67f71b02635c48d1496b7f2a..0ceae5cbd89a327d198a5bac595f2e40882eefab 100644 --- a/drivers/ide/hpt366.c +++ b/drivers/ide/hpt366.c @@ -1012,7 +1012,7 @@ static int init_chipset_hpt366(struct pci_dev *dev) pci_read_config_dword(dev, 0x40, &itr1); /* Detect PCI clock by looking at cmd_high_time. */ - switch((itr1 >> 8) & 0x07) { + switch ((itr1 >> 8) & 0x0f) { case 0x09: pci_clk = 40; break; diff --git a/drivers/ide/ide-tape.c b/drivers/ide/ide-tape.c index 12fa04997dcc33a09129389435fb96f00bfe8e87..9ecf4e35adcd3c7765a7b84b8c7869a847bdc8ce 100644 --- a/drivers/ide/ide-tape.c +++ b/drivers/ide/ide-tape.c @@ -2052,12 +2052,12 @@ static int __init idetape_init(void) error = driver_register(&idetape_driver.gen_driver); if (error) - goto out_free_driver; + goto out_free_chrdev; return 0; -out_free_driver: - driver_unregister(&idetape_driver.gen_driver); +out_free_chrdev: + unregister_chrdev(IDETAPE_MAJOR, "ht"); out_free_class: class_destroy(idetape_sysfs_class); out: diff --git a/drivers/ide/pmac.c b/drivers/ide/pmac.c index 7f0434f7e486666be6052e1c11c98c16f8f25174..0c5d3a99468e6087b18d6c86706ffee02568057b 100644 --- a/drivers/ide/pmac.c +++ b/drivers/ide/pmac.c @@ -707,6 +707,7 @@ set_timings_mdma(ide_drive_t *drive, int intf_type, u32 *timings, u32 *timings2, *timings = ((*timings) & ~TR_133_PIOREG_MDMA_MASK) | tr; *timings2 = (*timings2) & ~TR_133_UDMAREG_UDMA_EN; } + break; case controller_un_ata6: case controller_k2_ata6: { /* 100Mhz cell */