From f0c6015ab811fb412954a9364e5e61a009baa8c5 Mon Sep 17 00:00:00 2001 From: Thomas Bogendoerfer Date: Wed, 2 Jul 2008 21:06:03 +0200 Subject: [PATCH] --- yaml --- r: 101432 b: refs/heads/master c: 8736595bb2b0ce6188ca31308c40921f3f02f35b h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/mips/pci/ops-mace.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index e4ec1c6ee4f2..eefb11087f6f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f2bc713f15103372c0efab5fc09dd813655c5096 +refs/heads/master: 8736595bb2b0ce6188ca31308c40921f3f02f35b diff --git a/trunk/arch/mips/pci/ops-mace.c b/trunk/arch/mips/pci/ops-mace.c index e95881897ec9..1cfb5588699f 100644 --- a/trunk/arch/mips/pci/ops-mace.c +++ b/trunk/arch/mips/pci/ops-mace.c @@ -61,6 +61,13 @@ mace_pci_read_config(struct pci_bus *bus, unsigned int devfn, /* ack possible master abort */ mace->pci.error &= ~MACEPCI_ERROR_MASTER_ABORT; mace->pci.control = control; + /* + * someone forgot to set the ultra bit for the onboard + * scsi chips; we fake it here + */ + if (bus->number == 0 && reg == 0x40 && size == 4 && + (devfn == (1 << 3) || devfn == (2 << 3))) + *val |= 0x1000; DPRINTK("read%d: reg=%08x,val=%02x\n", size * 8, reg, *val);