Hi Ard and Jeremy,

Let's keep _DMA regardless. Not all OSes support the IORT mechanism for DMA restrictions....

A


---
Отправлено из Workspace ONE Boxer

11 января 2021 г. в 2:50:34 AM GMT-6 Ard Biesheuvel <ard.biesheuvel@arm.com> пишет:
On 1/8/21 7:16 AM, Jeremy Linton wrote:
> We are going to add a _DMA() for the new controller, but
> it won't work right with the linux driver unless we lower
> the DMA zone again.
>
> Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
> ---
>  Platform/RaspberryPi/AcpiTables/Iort.aslc | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/Platform/RaspberryPi/AcpiTables/Iort.aslc b/Platform/RaspberryPi/AcpiTables/Iort.aslc
> index 00720194bb..f576fa3b04 100644
> --- a/Platform/RaspberryPi/AcpiTables/Iort.aslc
> +++ b/Platform/RaspberryPi/AcpiTables/Iort.aslc
> @@ -46,7 +46,7 @@ STATIC RPI4_IO_REMAPPING_STRUCTURE Iort = {
>        0x0,                                          // AllocationHints
>        0x0,                                          // Reserved
>        0x0,                                          // MemoryAccessFlags
> -      31,                                           // AddressSizeLimit
> +      30,                                           // AddressSizeLimit
>      }, {
>        "\\_SB_.SCB0.XHC0"                            // ObjectName
>      }
>

If you create a new named component node here for the device(s) that
actually need this lower limit, you can avoid the _DMA method altogether.