diff options
Diffstat (limited to 'arch/mips/pci')
-rw-r--r-- | arch/mips/pci/fixup-jmr3927.c | 14 | ||||
-rw-r--r-- | arch/mips/pci/fixup-sni.c | 2 | ||||
-rw-r--r-- | arch/mips/pci/ops-au1000.c | 6 |
3 files changed, 11 insertions, 11 deletions
diff --git a/arch/mips/pci/fixup-jmr3927.c b/arch/mips/pci/fixup-jmr3927.c index f8696081c5b1..6e72d213f4cd 100644 --- a/arch/mips/pci/fixup-jmr3927.c +++ b/arch/mips/pci/fixup-jmr3927.c | |||
@@ -38,6 +38,10 @@ int __init pcibios_map_irq(struct pci_dev *dev, u8 slot, u8 pin) | |||
38 | { | 38 | { |
39 | unsigned char irq = pin; | 39 | unsigned char irq = pin; |
40 | 40 | ||
41 | /* SMSC SLC90E66 IDE uses irq 14, 15 (default) */ | ||
42 | if (dev->vendor == PCI_VENDOR_ID_EFAR && | ||
43 | dev->device == PCI_DEVICE_ID_EFAR_SLC90E66_1) | ||
44 | return irq; | ||
41 | /* IRQ rotation (PICMG) */ | 45 | /* IRQ rotation (PICMG) */ |
42 | irq--; /* 0-3 */ | 46 | irq--; /* 0-3 */ |
43 | if (dev->bus->parent == NULL && | 47 | if (dev->bus->parent == NULL && |
@@ -93,13 +97,3 @@ int pcibios_plat_dev_init(struct pci_dev *dev) | |||
93 | { | 97 | { |
94 | return 0; | 98 | return 0; |
95 | } | 99 | } |
96 | |||
97 | int __init pcibios_map_irq(struct pci_dev *dev, u8 slot, u8 pin) | ||
98 | { | ||
99 | /* SMSC SLC90E66 IDE uses irq 14, 15 (default) */ | ||
100 | if (!(dev->vendor == PCI_VENDOR_ID_EFAR && | ||
101 | dev->device == PCI_DEVICE_ID_EFAR_SLC90E66_1)) | ||
102 | return pci_get_irq(dev, pin); | ||
103 | |||
104 | dev->irq = irq; | ||
105 | } | ||
diff --git a/arch/mips/pci/fixup-sni.c b/arch/mips/pci/fixup-sni.c index 0c9a4732d455..36e5fb1b3786 100644 --- a/arch/mips/pci/fixup-sni.c +++ b/arch/mips/pci/fixup-sni.c | |||
@@ -14,6 +14,8 @@ | |||
14 | #include <asm/mipsregs.h> | 14 | #include <asm/mipsregs.h> |
15 | #include <asm/sni.h> | 15 | #include <asm/sni.h> |
16 | 16 | ||
17 | #include <irq.h> | ||
18 | |||
17 | /* | 19 | /* |
18 | * PCIMT Shortcuts ... | 20 | * PCIMT Shortcuts ... |
19 | */ | 21 | */ |
diff --git a/arch/mips/pci/ops-au1000.c b/arch/mips/pci/ops-au1000.c index 8ae46481fcb7..7932dfe5eb9b 100644 --- a/arch/mips/pci/ops-au1000.c +++ b/arch/mips/pci/ops-au1000.c | |||
@@ -172,7 +172,11 @@ static int config_access(unsigned char access_type, struct pci_bus *bus, | |||
172 | error = -1; | 172 | error = -1; |
173 | DBG("Au1x Master Abort\n"); | 173 | DBG("Au1x Master Abort\n"); |
174 | } else if ((status >> 28) & 0xf) { | 174 | } else if ((status >> 28) & 0xf) { |
175 | DBG("PCI ERR detected: status %x\n", status); | 175 | DBG("PCI ERR detected: device %d, status %x\n", device, ((status >> 28) & 0xf)); |
176 | |||
177 | /* clear errors */ | ||
178 | au_writel(status & 0xf000ffff, Au1500_PCI_STATCMD); | ||
179 | |||
176 | *data = 0xffffffff; | 180 | *data = 0xffffffff; |
177 | error = -1; | 181 | error = -1; |
178 | } | 182 | } |