diff options
author | jhb <jhb@FreeBSD.org> | 2005-03-25 14:18:50 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2005-03-25 14:18:50 +0000 |
commit | 4057d2fbc5d5754e036929e3f1a4d4357b823366 (patch) | |
tree | 1d1f2e8e05c9221f48b0b13d5667256ef4262d05 | |
parent | 06e202e4aaf03adbdbf2eb46c84ff41cf3157db5 (diff) | |
download | FreeBSD-src-4057d2fbc5d5754e036929e3f1a4d4357b823366.zip FreeBSD-src-4057d2fbc5d5754e036929e3f1a4d4357b823366.tar.gz |
Add code to read the primary PCI bus number out of the Compaq/HP 6010
hotplug Host to PCI bridge. This is only needed for the non-ACPI case
as the BIOS includes a proper _BBN method in ACPI.
-rw-r--r-- | sys/dev/pci/pci_pci.c | 5 | ||||
-rw-r--r-- | sys/i386/pci/pci_bus.c | 6 |
2 files changed, 11 insertions, 0 deletions
diff --git a/sys/dev/pci/pci_pci.c b/sys/dev/pci/pci_pci.c index c246542..130205c 100644 --- a/sys/dev/pci/pci_pci.c +++ b/sys/dev/pci/pci_pci.c @@ -562,6 +562,11 @@ host_pcib_get_busno(pci_read_config_fn read_config, int bus, int slot, int func, case 0x03021014: *busnum = read_config(bus, slot, func, 0x44, 1); break; + + /* Compaq/HP -- vendor 0x0e11 */ + case 0x60100e11: + *busnum = read_config(bus, slot, func, 0xc8, 1); + break; default: /* Don't know how to read bus number. */ return 0; diff --git a/sys/i386/pci/pci_bus.c b/sys/i386/pci/pci_bus.c index 247e823..8721d4a 100644 --- a/sys/i386/pci/pci_bus.c +++ b/sys/i386/pci/pci_bus.c @@ -276,6 +276,12 @@ legacy_pcib_is_host_bridge(int bus, int slot, int func, *busnum = legacy_pcib_read_config(0, bus, slot, func, 0x44, 1); break; + /* Compaq/HP -- vendor 0x0e11 */ + case 0x60100e11: + s = "Compaq/HP Model 6010 HotPlug PCI Bridge"; + *busnum = legacy_pcib_read_config(0, bus, slot, func, 0xc8, 1); + break; + /* Integrated Micro Solutions -- vendor 0x10e0 */ case 0x884910e0: s = "Integrated Micro Solutions VL Bridge"; |