summaryrefslogtreecommitdiff
path: root/sys/arch/hp300/dev
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2010-09-06 12:30:36 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2010-09-06 12:30:36 +0000
commit5f8ff62c17fcb046e956c1e9d04a80768e8ab52e (patch)
treecad68d2951339102a807bac9646e703adc5f0585 /sys/arch/hp300/dev
parentc365f709e15aa72d00140412cea7eb6d080958a5 (diff)
Some stupid hardware marks PCI BARs as prefetchable that aren't side-effect
free. Mapping those with BUS_SPACE_MAP_PREFETCHABLE can have disastrous effects, like the NMIs observed by jsg@ with certain Intel 10Gb Ethernet devices. So stop trusting the devices and instead require drivers to explicitly pass the BUS_SPACE_MAP_PREFECTHABLE flag to pci_mapreg_map(). The pci_mapreg_info() call will continue to return BUS_SPACE_MAP_PREFECTHABLE flags for prefetchable BARs as an easy way to figure out whether a BAR is prefetchable. Since the vga_pci.c code uses this interface, all consumers of VGA BARs will still use the BUS_SPACE_MAP_PREFETCHABLE flag when appropriate. ok oga@, jsg@
Diffstat (limited to 'sys/arch/hp300/dev')
0 files changed, 0 insertions, 0 deletions