Merge branch 'server-cluster-locking-api' of git://linux-nfs.org/~bfields/linux
[powerpc.git] / drivers / ata / pata_hpt37x.c
index 12f387f..41d8312 100644 (file)
@@ -26,7 +26,7 @@
 #include <linux/libata.h>
 
 #define DRV_NAME       "pata_hpt37x"
-#define DRV_VERSION    "0.6.4"
+#define DRV_VERSION    "0.6.5"
 
 struct hpt_clock {
        u8      xfer_speed;
@@ -130,7 +130,7 @@ static const struct hpt_chip hpt370 = {
                hpt37x_timings_33,
                NULL,
                NULL,
-               hpt37x_timings_66
+               NULL
        }
 };
 
@@ -141,7 +141,7 @@ static const struct hpt_chip hpt370a = {
                hpt37x_timings_33,
                NULL,
                hpt37x_timings_50,
-               hpt37x_timings_66
+               NULL
        }
 };
 
@@ -272,13 +272,12 @@ static const char *bad_ata100_5[] = {
 
 /**
  *     hpt370_filter   -       mode selection filter
- *     @ap: ATA interface
  *     @adev: ATA device
  *
  *     Block UDMA on devices that cause trouble with this controller.
  */
 
-static unsigned long hpt370_filter(const struct ata_port *ap, struct ata_device *adev, unsigned long mask)
+static unsigned long hpt370_filter(struct ata_device *adev, unsigned long mask)
 {
        if (adev->class == ATA_DEV_ATA) {
                if (hpt_dma_blacklisted(adev, "UDMA", bad_ata33))
@@ -286,24 +285,23 @@ static unsigned long hpt370_filter(const struct ata_port *ap, struct ata_device
                if (hpt_dma_blacklisted(adev, "UDMA100", bad_ata100_5))
                        mask &= ~(0x1F << ATA_SHIFT_UDMA);
        }
-       return ata_pci_default_filter(ap, adev, mask);
+       return ata_pci_default_filter(adev, mask);
 }
 
 /**
  *     hpt370a_filter  -       mode selection filter
- *     @ap: ATA interface
  *     @adev: ATA device
  *
  *     Block UDMA on devices that cause trouble with this controller.
  */
 
-static unsigned long hpt370a_filter(const struct ata_port *ap, struct ata_device *adev, unsigned long mask)
+static unsigned long hpt370a_filter(struct ata_device *adev, unsigned long mask)
 {
        if (adev->class != ATA_DEV_ATA) {
                if (hpt_dma_blacklisted(adev, "UDMA100", bad_ata100_5))
                        mask &= ~ (0x1F << ATA_SHIFT_UDMA);
        }
-       return ata_pci_default_filter(ap, adev, mask);
+       return ata_pci_default_filter(adev, mask);
 }
 
 /**
@@ -1020,8 +1018,8 @@ static int hpt37x_init_one(struct pci_dev *dev, const struct pci_device_id *id)
                                        return -ENODEV;
                                port = &info_hpt372;
                                chip_table = &hpt371;
-                               /* Single channel device, paster is not present
-                                  but the NIOS (or us for non x86) must mark it
+                               /* Single channel device, master is not present
+                                  but the BIOS (or us for non x86) must mark it
                                   absent */
                                pci_read_config_byte(dev, 0x50, &mcr1);
                                mcr1 &= ~0x04;
@@ -1133,16 +1131,11 @@ static int hpt37x_init_one(struct pci_dev *dev, const struct pci_device_id *id)
        } else {
                port->private_data = (void *)chip_table->clocks[clock_slot];
                /*
-                *      Perform a final fixup. The 371 and 372 clock determines
-                *      if UDMA133 is available. (FIXME: should we use DPLL then ?)
-                */
+                *      Perform a final fixup. Note that we will have used the
+                *      DPLL on the HPT372 which means we don't have to worry
+                *      about lack of UDMA133 support on lower clocks
+                */
 
-               if (clock_slot == 2 && chip_table == &hpt372) { /* 50Mhz */
-                       printk(KERN_WARNING "pata_hpt37x: No UDMA133 support available with 50MHz bus clock.\n");
-                       if (port == &info_hpt372)
-                               port = &info_hpt372_50;
-                       else BUG();
-               }
                if (clock_slot < 2 && port == &info_hpt370)
                        port = &info_hpt370_33;
                if (clock_slot < 2 && port == &info_hpt370a)