diff --git a/sys/conf/options.amd64 b/sys/conf/options.amd64 --- a/sys/conf/options.amd64 +++ b/sys/conf/options.amd64 @@ -60,3 +60,6 @@ # EFI Runtime services support EFIRT opt_efirt.h + +# Don't create a "legacy" PCI bridge if none is found. +NO_LEGACY_PCIB opt_cpu.h diff --git a/sys/conf/options.i386 b/sys/conf/options.i386 --- a/sys/conf/options.i386 +++ b/sys/conf/options.i386 @@ -104,3 +104,6 @@ # options for the Intel C600 SAS driver (isci) ISCI_LOGGING opt_isci.h + +# Don't create a "legacy" PCI bridge if none is found. +NO_LEGACY_PCIB opt_cpu.h diff --git a/sys/x86/pci/pci_bus.c b/sys/x86/pci/pci_bus.c --- a/sys/x86/pci/pci_bus.c +++ b/sys/x86/pci/pci_bus.c @@ -488,11 +488,13 @@ * Note that pci_cfgregopen() thinks we have PCI devices.. */ if (!found) { +#ifndef NO_LEGACY_PCIB if (bootverbose) printf( "legacy_pcib_identify: no bridge found, adding pcib0 anyway\n"); child = BUS_ADD_CHILD(parent, 100, "pcib", 0); legacy_set_pcibus(child, 0); +#endif } }