From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=217.140.96.140; helo=cam-smtp0.cambridge.arm.com; envelope-from=sami.mujawar@arm.com; receiver=edk2-devel@lists.01.org Received: from cam-smtp0.cambridge.arm.com (fw-tnat.cambridge.arm.com [217.140.96.140]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 694CC203B8CB2 for ; Fri, 27 Apr 2018 08:54:05 -0700 (PDT) Received: from E107187.Emea.Arm.com (e107187.emea.arm.com [10.1.211.22]) by cam-smtp0.cambridge.arm.com (8.13.8/8.13.8) with ESMTP id w3RFs2s8017663; Fri, 27 Apr 2018 16:54:02 +0100 From: Sami Mujawar To: edk2-devel@lists.01.org Cc: ard.biesheuvel@linaro.org, leif.lindholm@linaro.org, Matteo.Carlini@arm.com, Stephanie.Hughes-Fitt@arm.com, nd@arm.com, evan.lloyd@arm.com Date: Fri, 27 Apr 2018 16:53:54 +0100 Message-Id: <20180427155356.7596-2-sami.mujawar@arm.com> X-Mailer: git-send-email 2.11.0.windows.3 In-Reply-To: <20180427155356.7596-1-sami.mujawar@arm.com> References: <20180427155356.7596-1-sami.mujawar@arm.com> Subject: [staging/dynamictables PATCH v1 1/2] MdePkg: IORT Specification Rev D updates X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Apr 2018 15:54:05 -0000 Updated IORT structure definitions to conform to the IO Remapping Table, Platform Design Document, Revision D, March 2018. The following structures have been updated: 1. SMMUv3 - fix on proximity node. 2. PMCG - added page 1 support. 3. Root complex node - added DMA mask (memory address size limit). Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Sami Mujawar Reviewed-by: Evan Lloyd Reviewed-by: Ard Biesheuvel Reviewed-by: Liming Gao --- The changes can be seen at https://github.com/samimujawar/edk2-staging/tree/259_iort_rev_d_update_v1 Notes: v1: - Updated for IORT Specification Revision D. [SAMI] - Reviewed-by Ard Biesheuvel [ARD] - Reviewed-by Liming Gao [LIMING] MdePkg/Include/IndustryStandard/IoRemappingTable.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/MdePkg/Include/IndustryStandard/IoRemappingTable.h b/MdePkg/Include/IndustryStandard/IoRemappingTable.h index 2e5cb45d7e2ffd4a0559ef706b71874843e3fdbd..389f352c2fbc725e5e9a881a73adc306035dc0de 100644 --- a/MdePkg/Include/IndustryStandard/IoRemappingTable.h +++ b/MdePkg/Include/IndustryStandard/IoRemappingTable.h @@ -1,7 +1,7 @@ /** @file - ACPI IO Remapping Table (IORT) as specified in ARM spec DEN0049C + ACPI IO Remapping Table (IORT) as specified in ARM spec DEN0049D - http://infocenter.arm.com/help/topic/com.arm.doc.den0049c/DEN0049C_IO_Remapping_Table.pdf + http://infocenter.arm.com/help/topic/com.arm.doc.den0049d/DEN0049D_IO_Remapping_Table.pdf Copyright (c) 2017, Linaro Limited. All rights reserved.
Copyright (c) 2018, ARM Limited. All rights reserved.
@@ -123,6 +123,8 @@ typedef struct { UINT32 AtsAttribute; UINT32 PciSegmentNumber; + UINT8 MemoryAddressSize; + UINT8 Reserved1[3]; } EFI_ACPI_6_0_IO_REMAPPING_RC_NODE; /// @@ -185,8 +187,7 @@ typedef struct { UINT32 Pri; UINT32 Gerr; UINT32 Sync; - UINT8 ProximityDomain; - UINT8 Reserved1[3]; + UINT32 ProximityDomain; UINT32 DeviceIdMappingIndex; } EFI_ACPI_6_0_IO_REMAPPING_SMMU3_NODE; @@ -199,6 +200,7 @@ typedef struct { UINT64 Base; UINT32 OverflowInterruptGsiv; UINT32 NodeReference; + UINT64 Page1Base; //EFI_ACPI_6_0_IO_REMAPPING_ID_TABLE OverflowInterruptMsiMapping[1]; } EFI_ACPI_6_0_IO_REMAPPING_PMCG_NODE; -- 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'