mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-22 20:23:57 +08:00
x86/PCI: derive pcibios_last_bus from ACPI MCFG
On various newer Intel systems the PCI bus(ses) the non-core devices live on aren't getting announced by ACPI except through the bus range covered by mmconfig. At least the i7core-edac driver depends on these devices getting detected. Mauro, could you check whether with this change the Xeon 55xx hack in that driver can go away altogether, and with it the bogus exporting of pcibios_scan_specific_bus()? Signed-off-by: Jan Beulich <jbeulich@novell.com> Cc: Mauro Carvalho Chehab <mchehab@redhat.com> Cc: Aristeu Sergio <arozansk@redhat.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
This commit is contained in:
parent
51c2e0a7e5
commit
a3170c1f92
@ -606,6 +606,16 @@ static void __init __pci_mmcfg_init(int early)
|
|||||||
if (list_empty(&pci_mmcfg_list))
|
if (list_empty(&pci_mmcfg_list))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (pcibios_last_bus < 0) {
|
||||||
|
const struct pci_mmcfg_region *cfg;
|
||||||
|
|
||||||
|
list_for_each_entry(cfg, &pci_mmcfg_list, list) {
|
||||||
|
if (cfg->segment)
|
||||||
|
break;
|
||||||
|
pcibios_last_bus = cfg->end_bus;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (pci_mmcfg_arch_init())
|
if (pci_mmcfg_arch_init())
|
||||||
pci_probe = (pci_probe & ~PCI_PROBE_MASK) | PCI_PROBE_MMCONF;
|
pci_probe = (pci_probe & ~PCI_PROBE_MASK) | PCI_PROBE_MMCONF;
|
||||||
else {
|
else {
|
||||||
|
Loading…
Reference in New Issue
Block a user