ahci/pata_jmicron: fix JMicron quirk
[sfrench/cifs-2.6.git] / drivers / ata / pata_jmicron.c
index 2d661cb4df3cd75470af0e98f58e2bbb42886191..d50264af284811d164b231f4a4d01e352b8751d0 100644 (file)
@@ -204,20 +204,12 @@ static int jmicron_init_one (struct pci_dev *pdev, const struct pci_device_id *i
 
        u32 reg;
 
-       if (id->driver_data != 368) {
-               /* Put the controller into AHCI mode in case the AHCI driver
-                  has not yet been loaded. This can be done with either
-                  function present */
+       /* PATA controller is fn 1, AHCI is fn 0 */
+       if (id->driver_data != 368 && PCI_FUNC(pdev->devfn) != 1)
+               return -ENODEV;
 
-               /* FIXME: We may want a way to override this in future */
-               pci_write_config_byte(pdev, 0x41, 0xa1);
-
-               /* PATA controller is fn 1, AHCI is fn 0 */
-               if (PCI_FUNC(pdev->devfn) != 1)
-                       return -ENODEV;
-       }
-       if ( id->driver_data == 365 || id->driver_data == 366) {
-               /* The 365/66 have two PATA channels, redirect the second */
+       /* The 365/66 have two PATA channels, redirect the second */
+       if (id->driver_data == 365 || id->driver_data == 366) {
                pci_read_config_dword(pdev, 0x80, &reg);
                reg |= (1 << 24);       /* IDE1 to PATA IDE secondary */
                pci_write_config_dword(pdev, 0x80, reg);