A new Arm standard DEN0115A specifies how platforms that don't have standard ECAM can use the firmware to handle config read/write operations. This is mostly implemented in TFA but UEFI needs to assure that there is a description of the root complex in the ACPI namespace.
This set adds that description based on a new menu item which toggles between XHCI platform description and PCIe via a BDS menu selection on the RPi4. The CM4 is really the platform that needs this as it has a PCIe slot. On that platform PCIe is enabled by default. v2->v3: Remove ACPI0004 container around PCI root bridge along with some whitespace/tweaks to the Pci.asl file. Add Linux quirk _DSD patch at the end. v1->v2: Use global shared interrupts in PCI PRT which is a pretty significant simplification. Modify bus max to use the secondary side of the root port for enforcing device limits Various other AML cleanups per Ard (drop redundant _DMA, bump UID to make it unique, etc) Break link status move into its own patch MADT->MCFG typos in various comments Commit message tweaking Jeremy Linton (7): Platform/RaspberryPi: Add XHCI/PCI selection menu Platform/RaspberryPi: Break XHCI into its own SSDT Platform/RaspberryPi: Add PCIe SSDT Silicon/Broadcom/Bcm27xx: Relax PCIe device restriction Silicon/Broadcom/Bcm27xx: Move linkup check into the cfg accessor Platform/RaspberryPi: Enable NVMe boot on CM4 Platform/RaspberryPi: Add Linux quirk support Platform/RaspberryPi/AcpiTables/AcpiTables.inf | 4 + Platform/RaspberryPi/AcpiTables/Dsdt.asl | 3 - Platform/RaspberryPi/AcpiTables/Pci.asl | 168 +++++++++++++++++++++ Platform/RaspberryPi/AcpiTables/Xhci.asl | 35 +++-- Platform/RaspberryPi/Drivers/ConfigDxe/ConfigDxe.c | 56 +++++++ .../RaspberryPi/Drivers/ConfigDxe/ConfigDxe.inf | 1 + .../RaspberryPi/Drivers/ConfigDxe/ConfigDxeHii.uni | 5 + .../RaspberryPi/Drivers/ConfigDxe/ConfigDxeHii.vfr | 17 +++ Platform/RaspberryPi/Include/ConfigVars.h | 4 + Platform/RaspberryPi/RPi3/RPi3.dsc | 6 + Platform/RaspberryPi/RPi4/RPi4.dsc | 13 ++ Platform/RaspberryPi/RPi4/RPi4.fdf | 5 + Platform/RaspberryPi/RaspberryPi.dec | 1 + .../Bcm2711PciHostBridgeLibConstructor.c | 5 - .../Library/Bcm2711PciSegmentLib/PciSegmentLib.c | 28 +++- 15 files changed, 323 insertions(+), 28 deletions(-) create mode 100644 Platform/RaspberryPi/AcpiTables/Pci.asl -- 2.13.7 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#79613): https://edk2.groups.io/g/devel/message/79613 Mute This Topic: https://groups.io/mt/85014312/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-