[PATCH] pata_sil680: Only enable MMIO on Cell blades

From: Benjamin Herrenschmidt
Date: Tue Mar 25 2008 - 19:53:59 EST


There have been reported regressions of the SIL 680 driver when
using MMIO, so this makes it only try MMIO on Cell blades where
it's known to be necessary (the host bridge doesn't do PIO on these).

We'll try to find the root problem with MMIO separately.

Signed-off-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
---

drivers/ata/pata_sil680.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

--- linux-work.orig/drivers/ata/pata_sil680.c 2008-03-26 10:43:20.000000000 +1100
+++ linux-work/drivers/ata/pata_sil680.c 2008-03-26 10:43:34.000000000 +1100
@@ -269,7 +269,11 @@ static u8 sil680_init_chip(struct pci_de
dev_dbg(&pdev->dev, "sil680: BA5_EN = %d clock = %02X\n",
tmpbyte & 1, tmpbyte & 0x30);

- *try_mmio = (tmpbyte & 1) || pci_resource_start(pdev, 5);
+ *try_mmio = 0;
+#ifdef CONFIG_PPC
+ if (machine_is(cell))
+ *try_mmio = (tmpbyte & 1) || pci_resource_start(pdev, 5);
+#endif

switch(tmpbyte & 0x30) {
case 0x00:
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/