diff options
Diffstat (limited to 'arch/sparc64/kernel/pci_schizo.c')
-rw-r--r-- | arch/sparc64/kernel/pci_schizo.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/sparc64/kernel/pci_schizo.c b/arch/sparc64/kernel/pci_schizo.c index f1f105af8d3c..322cdbf50eff 100644 --- a/arch/sparc64/kernel/pci_schizo.c +++ b/arch/sparc64/kernel/pci_schizo.c | |||
@@ -125,6 +125,9 @@ static int schizo_read_pci_cfg(struct pci_bus *bus_dev, unsigned int devfn, | |||
125 | u16 tmp16; | 125 | u16 tmp16; |
126 | u8 tmp8; | 126 | u8 tmp8; |
127 | 127 | ||
128 | if (bus_dev == pbm->pci_bus && devfn == 0x00) | ||
129 | return pci_host_bridge_read_pci_cfg(bus_dev, devfn, where, | ||
130 | size, value); | ||
128 | switch (size) { | 131 | switch (size) { |
129 | case 1: | 132 | case 1: |
130 | *value = 0xff; | 133 | *value = 0xff; |
@@ -178,6 +181,9 @@ static int schizo_write_pci_cfg(struct pci_bus *bus_dev, unsigned int devfn, | |||
178 | unsigned char bus = bus_dev->number; | 181 | unsigned char bus = bus_dev->number; |
179 | u32 *addr; | 182 | u32 *addr; |
180 | 183 | ||
184 | if (bus_dev == pbm->pci_bus && devfn == 0x00) | ||
185 | return pci_host_bridge_write_pci_cfg(bus_dev, devfn, where, | ||
186 | size, value); | ||
181 | addr = schizo_pci_config_mkaddr(pbm, bus, devfn, where); | 187 | addr = schizo_pci_config_mkaddr(pbm, bus, devfn, where); |
182 | if (!addr) | 188 | if (!addr) |
183 | return PCIBIOS_SUCCESSFUL; | 189 | return PCIBIOS_SUCCESSFUL; |