b3e0af3d32
Avoid interpreting the upper 32 bits of 64-bit BARs as a 32-bit BAR. Otherwise, the code would assume that the value 0 was incorrect and either: (a) [on bus 0] "fix up" the address to some nonzero value, thus placing the decoded address range outside of 32-bit address space, or (b) [elsewhere] completely disable the device. The fact that this behaviour depends on the bus number of the device is already XXX'd. XXX: This will need revisiting if and when we ever want to handle a PCI bus XXX: with more than 32 bits of address space on an i386. The onboard Adaptec 7890 on my Dell Precision Workstation 410 works again. |
||
---|---|---|
.. | ||
joy_pci.c | ||
opti82c558.c | ||
opti82c558reg.h | ||
opti82c700.c | ||
opti82c700reg.h | ||
pceb.c | ||
pchb.c | ||
pci_addr_fixup.c | ||
pci_addr_fixup.h | ||
pci_bus_fixup.c | ||
pci_bus_fixup.h | ||
pci_intr_fixup.c | ||
pci_intr_fixup.h | ||
pci_machdep.c | ||
pcib.c | ||
pcibios.c | ||
pcibios.h | ||
pcic_pci_machdep.c | ||
pciide_machdep.c | ||
piix.c | ||
piixreg.h | ||
piixvar.h | ||
sis85c503.c | ||
sis85c503reg.h | ||
via82c586.c | ||
via82c586reg.h |