I don't know... the ACPI spec is weird. https://uefi.org/specs/ACPI/6.4/06_Device_Configuration/Device_Configuration.html#dma-direct-memory-access ...lists ResourceConsumer for _DMA. A ________________________________ From: Jeremy Linton Sent: Thursday, April 8, 2021 12:58 AM To: devel@edk2.groups.io Cc: ard.biesheuvel@arm.com ; leif@nuviainc.com ; pete@akeo.ie ; samer.el-haj-mahmoud@arm.com ; Andrei Warkentin ; Jeremy Linton Subject: [PATCH 3/3] Platform/RaspberryPi/AcpiTables: Correct _DMA consumer Bridge devices should be marked as producers so that their children can consume the resources. In linux if this isn't true then the translation gets ignored and the DMA values are incorrect. This fixes DMA on all the devices that need a translation. Signed-off-by: Jeremy Linton --- Platform/RaspberryPi/AcpiTables/Dsdt.asl | 2 +- Platform/RaspberryPi/AcpiTables/Emmc.asl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Platform/RaspberryPi/AcpiTables/Dsdt.asl b/Platform/RaspberryPi/AcpiTables/Dsdt.asl index d116f965e1..32cd5fc9f9 100644 --- a/Platform/RaspberryPi/AcpiTables/Dsdt.asl +++ b/Platform/RaspberryPi/AcpiTables/Dsdt.asl @@ -205,7 +205,7 @@ DefinitionBlock ("Dsdt.aml", "DSDT", 5, "RPIFDN", "RPI", 2) // Only the first GB is available. // Bus 0xC0000000 -> CPU 0x00000000. // - QWordMemory (ResourceConsumer, + QWordMemory (ResourceProducer, , MinFixed, MaxFixed, diff --git a/Platform/RaspberryPi/AcpiTables/Emmc.asl b/Platform/RaspberryPi/AcpiTables/Emmc.asl index 179dd3ecdb..0fbc2a79ea 100644 --- a/Platform/RaspberryPi/AcpiTables/Emmc.asl +++ b/Platform/RaspberryPi/AcpiTables/Emmc.asl @@ -32,7 +32,7 @@ DefinitionBlock (__FILE__, "SSDT", 5, "RPIFDN", "RPI4EMMC", 2) } Name (_DMA, ResourceTemplate() { - QWordMemory (ResourceConsumer, + QWordMemory (ResourceProducer, , MinFixed, MaxFixed, -- 2.13.7