+ Ard's new e-mail address From: Andrei Warkentin Sent: Thursday, April 8, 2021 10:17 AM To: Jeremy Linton ; devel@edk2.groups.io Cc: Ard Biesheuvel ; leif@nuviainc.com; pete@akeo.ie; Samer El-Haj-Mahmoud Subject: Re: [PATCH 2/3] Platform/RaspberryPi/AcpiTables: Add further named components Reviewed-by: Andrei Warkentin > ________________________________ 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 2/3] Platform/RaspberryPi/AcpiTables: Add further named components Add some additional IORT nodes for the USB & EMMC devices, realistically we probably only need to have a single node with the lowest AddressSizeLimit but this is conceptually "cleaner" should anyone actually try and use these values rather than the _DMA provided ones. Signed-off-by: Jeremy Linton > --- Platform/RaspberryPi/AcpiTables/Iort.aslc | 44 ++++++++++++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/Platform/RaspberryPi/AcpiTables/Iort.aslc b/Platform/RaspberryPi/AcpiTables/Iort.aslc index 00720194bb..810307ae37 100644 --- a/Platform/RaspberryPi/AcpiTables/Iort.aslc +++ b/Platform/RaspberryPi/AcpiTables/Iort.aslc @@ -20,6 +20,8 @@ typedef struct { typedef struct { EFI_ACPI_6_0_IO_REMAPPING_TABLE Iort; RPI4_NC_NODE NamedCompNode; + RPI4_NC_NODE NamedCompNode2; + RPI4_NC_NODE NamedCompNode3; } RPI4_IO_REMAPPING_STRUCTURE; STATIC RPI4_IO_REMAPPING_STRUCTURE Iort = { @@ -27,7 +29,7 @@ STATIC RPI4_IO_REMAPPING_STRUCTURE Iort = { ACPI_HEADER (EFI_ACPI_6_0_IO_REMAPPING_TABLE_SIGNATURE, RPI4_IO_REMAPPING_STRUCTURE, EFI_ACPI_IO_REMAPPING_TABLE_REVISION), - 1, // NumNodes + 3, // NumNodes sizeof (EFI_ACPI_6_0_IO_REMAPPING_TABLE), // NodeOffset 0 // Reserved }, { @@ -50,6 +52,46 @@ STATIC RPI4_IO_REMAPPING_STRUCTURE Iort = { }, { "\\_SB_.SCB0.XHC0" // ObjectName } + }, { + // gpu/dwc usb named component node + { + { + EFI_ACPI_IORT_TYPE_NAMED_COMP, // Type + sizeof (RPI4_NC_NODE), // Length + 0x0, // Revision + 0x0, // Reserved + 0x0, // NumIdMappings + 0x0, // IdReference + }, + 0x0, // Flags + 0x0, // CacheCoherent + 0x0, // AllocationHints + 0x0, // Reserved + 0x0, // MemoryAccessFlags + 30, // AddressSizeLimit + }, { + "\\_SB_.GDV0.USB0" // ObjectName + } + }, { + // emmc2 named component node + { + { + EFI_ACPI_IORT_TYPE_NAMED_COMP, // Type + sizeof (RPI4_NC_NODE), // Length + 0x0, // Revision + 0x0, // Reserved + 0x0, // NumIdMappings + 0x0, // IdReference + }, + 0x0, // Flags + 0x0, // CacheCoherent + 0x0, // AllocationHints + 0x0, // Reserved + 0x0, // MemoryAccessFlags + 30, // AddressSizeLimit + }, { + "\\_SB_.GDV1.SDC3" // ObjectName + } } }; -- 2.13.7 IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.