Expand the support for PCI-e memory mapped configuration space access.
authorAlexander Polakov <polachok@gmail.com>
Sun, 1 Nov 2009 20:16:28 +0000 (23:16 +0300)
committerAlexander Polakov <polachok@gmail.com>
Sun, 8 Nov 2009 17:57:11 +0000 (20:57 +0300)
commitaadf1042d84d6f5f24b1b547838b4ec626a842fe
treea5281587ab0d23e7a3f5749ce4014bd3bcf471a4
parentc6c9bf45b27c1be34a983101e7ca629b659e57d8
Expand the support for PCI-e memory mapped configuration space access.

This defaults to off and must be explicitly
enabled by setting the loader tunable hw.pci.mcfg=1.
- Add support for the Intel 915GM chipsets by reading the BAR.
- Add parsing of the ACPI MCFG table to discover memory mapped configuration
  access on modern machines.
- For config requests to busses not listed in ACPI's min/max valid buses,
  fall back to using type #1 configuration access instead.
- Add a workaround for some K8 chipsets that do not expose all devices on
  bus 0 via MCFG and fall back to type #1 for those devices instead.

Obtained-from: FreeBSD
sys/bus/pci/i386/pci_cfgreg.c
sys/bus/pci/i386/pci_cfgreg.h
sys/dev/acpica5/acpi.c