Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 29 Jul 2016 20:29:06 +0000 (13:29 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 29 Jul 2016 20:29:06 +0000 (13:29 -0700)
Pull IDE updates from David Miller:
 "Just a couple small bug fixes, nothing overly exciting in here"

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide:
  ide: missing break statement in set_timings_mdma()
  ide: hpt366: fix incorrect mask when checking at cmd_high_time
  ide-tape: fix misprint in failure handling in idetape_init()
  cmd640: add __init attribute

drivers/ide/cmd640.c
drivers/ide/hpt366.c
drivers/ide/ide-tape.c
drivers/ide/pmac.c

index 70f0a2754c13eb38b92010b55db25505716f92a5..004243bd84dbd9119be21705ab85b0f793d717fb 100644 (file)
@@ -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",
index f94baadbf42474ed67f71b02635c48d1496b7f2a..0ceae5cbd89a327d198a5bac595f2e40882eefab 100644 (file)
@@ -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;
index 12fa04997dcc33a09129389435fb96f00bfe8e87..9ecf4e35adcd3c7765a7b84b8c7869a847bdc8ce 100644 (file)
@@ -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:
index 7f0434f7e486666be6052e1c11c98c16f8f25174..0c5d3a99468e6087b18d6c86706ffee02568057b 100644 (file)
@@ -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 */