summaryrefslogtreecommitdiffstats
path: root/drivers/ata/pata_sil680.c
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt2008-03-28 22:52:29 +0100
committerJeff Garzik2008-03-29 17:21:27 +0100
commit0f436eff54f90419ac1b8accfb3e6e17c4b49a4e (patch)
treee360a1e7ee5c2928efa3f1ab590ad9ba1c1927fb /drivers/ata/pata_sil680.c
parentMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vir... (diff)
downloadkernel-qcow2-linux-0f436eff54f90419ac1b8accfb3e6e17c4b49a4e.tar.gz
kernel-qcow2-linux-0f436eff54f90419ac1b8accfb3e6e17c4b49a4e.tar.xz
kernel-qcow2-linux-0f436eff54f90419ac1b8accfb3e6e17c4b49a4e.zip
pata_sil680: only enable MMIO on Cell blades
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@kernel.crashing.org> Acked-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/ata/pata_sil680.c')
-rw-r--r--drivers/ata/pata_sil680.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/ata/pata_sil680.c b/drivers/ata/pata_sil680.c
index 503245a1eafa..3988e44f4934 100644
--- a/drivers/ata/pata_sil680.c
+++ b/drivers/ata/pata_sil680.c
@@ -269,7 +269,11 @@ static u8 sil680_init_chip(struct pci_dev *pdev, int *try_mmio)
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: