On 2023-01-05 1:29 p.m., Bjorn Helgaas wrote: > On Thu, Jan 05, 2023 at 06:04:52PM +0000, Luck, Tony wrote: >>> Hi Tony, can you share a dmesg log? Does it look like the same thing >>> Kan reported, where the ECAM space is reported only via an >>> EfiMemoryMappedIO region and is not otherwise reserved by firmware? >> >> Attached are serial logs. "broken" is the one from v6.2-rc2, "revert" is the >> one with your commit reverted. >> >> I don't see the string "ECAM" in either of them. > > Yeah, "ECAM" is what the PCIe spec calls it, but Linux logging uses > "MMCONFIG". Probably should change that. > > Anyway, your dmesg log shows the same problem: > > DMI: Intel Corporation BRICKLAND/BRICKLAND, BIOS BRBDXSD1.86B.0338.V01.1603162127 03/16/2016 > efi: Remove mem48: MMIO range=[0x80000000-0x8fffffff] (256MB) from e820 map > PCI: MMCONFIG for domain 0000 [bus 00-ff] at [mem 0x80000000-0x8fffffff] (base 0x80000000) > [Firmware Info]: PCI: MMCONFIG at [mem 0x80000000-0x8fffffff] not reserved in ACPI motherboard resources > PCI: not using MMCONFIG > acpi PNP0A03:00: fail to add MMCONFIG information, can't access extended configuration space under this bridge > > Apparently the only mention of [mem 0x80000000-0x8fffffff] in the > firmware/kernel interface is as an EfiMemoryMappedIO region. > > I think this is a firmware bug, but obviously we're going to have to > figure out a way around it. > I just want to share that I did more tests on an Ice Lake server (a different generation from my original report and Tony's machine). The same problem can be found as well. [ 0.000000] DMI: Intel Corporation M50CYP2SB2U/M50CYP2SB2U, BIOS SE5C6200.86B.4018.D65.2010201151 10/20/2020 [ 0.000000] efi: Remove mem375: MMIO range=[0x80000000-0x8fffffff] (256MB) from e820 map [ 0.000000] e820: remove [mem 0x80000000-0x8fffffff] reserved [ 1.528341] PCI: MMCONFIG for domain 0000 [bus 00-ff] at [mem 0x80000000-0x8fffffff] (base 0x80000000) [ 1.566605] [Firmware Info]: PCI: MMCONFIG at [mem 0x80000000-0x8fffffff] not reserved in ACPI motherboard resources [ 1.566611] PCI: not using MMCONFIG This firmware implementation should exist on the existing platforms for a long time. Thanks, Kan