Hi,

On 8/17/21 10:09 AM, Ard Biesheuvel wrote:
On Tue, 10 Aug 2021 at 05:36, Jeremy Linton <jeremy.lin...@arm.com> wrote:

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.

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)

I still see a _DMA method on the PCIE node, and the UID you chose is
already used elsewhere.

Yah, thanks for keeping me honest here, I'm not really sure what happened with the _UID, but I would have probably killed windows again. <sigh>

OTOH, picking off the pcie bridge specific _DMA causes, failures, which don't really make sense either, except that the ACPI spec explicitly notes the case of a PCIe bridge with a DMA constrain needs to have it defined on the device responsible for the translation/limitation.

In the end really, the container is unnecessarily, so removing it solves both the problem of all these duplicate containers as well as the duplicate DMA producer.

I will repost RSN.


     Break link status move into its own patch
     MADT->MCFG typos in various comments
     Commit message tweaking

Jeremy Linton (6):
   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/AcpiTables/AcpiTables.inf     |   4 +
  Platform/RaspberryPi/AcpiTables/Dsdt.asl           |   3 -
  Platform/RaspberryPi/AcpiTables/Pci.asl            | 209 +++++++++++++++++++++
  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, 364 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 (#79597): https://edk2.groups.io/g/devel/message/79597
Mute This Topic: https://groups.io/mt/84786148/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to