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 619B22257C2DD for ; Mon, 5 Mar 2018 06:47:10 -0800 (PST) Received: from E107187.Emea.Arm.com (e107187.emea.arm.com [10.1.211.8]) by cam-smtp0.cambridge.arm.com (8.13.8/8.13.8) with ESMTP id w25ErGVL003069; Mon, 5 Mar 2018 14:53:17 GMT From: Sami Mujawar To: edk2-devel@lists.01.org Cc: michael.d.kinney@intel.com, liming.gao@intel.com, ard.biesheuvel@linaro.org, leif.lindholm@linaro.org, evan.lloyd@arm.com, Matteo.Carlini@arm.com, Stephanie.Hughes-Fitt@arm.com, nd@arm.com Date: Mon, 5 Mar 2018 14:53:11 +0000 Message-Id: <20180305145311.83104-1-sami.mujawar@arm.com> X-Mailer: git-send-email 2.11.0.windows.3 Subject: [PATCH v1] MdePkg: SMMUv3 updates for IORT table definitions X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2018 14:47:12 -0000 Updated the IORT SMMUv3 Node structure and flags to match the IO Remapping Table, Platform Design Document, Revision C dated 15 MAY 2017. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Sami Mujawar Signed-off-by: Evan Lloyd --- The changes can be seen at https://github.com/samimujawar/edk2/tree/236_ioremapping_header_v1 Notes: v1: - Updated SMMUv3 node structure and associated flags. [SAMI] MdePkg/Include/IndustryStandard/IoRemappingTable.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/MdePkg/Include/IndustryStandard/IoRemappingTable.h b/MdePkg/Include/IndustryStandard/IoRemappingTable.h index c113afdd27843111bc7ad6e1de1108260fad2bbc..2e5cb45d7e2ffd4a0559ef706b71874843e3fdbd 100644 --- a/MdePkg/Include/IndustryStandard/IoRemappingTable.h +++ b/MdePkg/Include/IndustryStandard/IoRemappingTable.h @@ -4,6 +4,7 @@ http://infocenter.arm.com/help/topic/com.arm.doc.den0049c/DEN0049C_IO_Remapping_Table.pdf Copyright (c) 2017, Linaro Limited. All rights reserved.
+ Copyright (c) 2018, ARM Limited. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License @@ -53,6 +54,11 @@ #define EFI_ACPI_IORT_SMMUv3_FLAG_COHAC_OVERRIDE BIT0 #define EFI_ACPI_IORT_SMMUv3_FLAG_HTTU_OVERRIDE BIT1 +#define EFI_ACPI_IORT_SMMUv3_FLAG_PROXIMITY_DOMAIN BIT3 + +#define EFI_ACPI_IORT_SMMUv3_MODEL_GENERIC 0x0 +#define EFI_ACPI_IORT_SMMUv3_MODEL_HISILICON_HI161X 0x1 +#define EFI_ACPI_IORT_SMMUv3_MODEL_CAVIUM_CN99XX 0x2 #define EFI_ACPI_IORT_ROOT_COMPLEX_ATS_UNSUPPORTED 0x0 #define EFI_ACPI_IORT_ROOT_COMPLEX_ATS_SUPPORTED 0x1 @@ -165,7 +171,7 @@ typedef struct { } EFI_ACPI_6_0_IO_REMAPPING_SMMU_NODE; /// -/// Node type 4: SMMUv4 node +/// Node type 4: SMMUv3 node /// typedef struct { EFI_ACPI_6_0_IO_REMAPPING_NODE Node; @@ -179,6 +185,9 @@ typedef struct { UINT32 Pri; UINT32 Gerr; UINT32 Sync; + UINT8 ProximityDomain; + UINT8 Reserved1[3]; + UINT32 DeviceIdMappingIndex; } EFI_ACPI_6_0_IO_REMAPPING_SMMU3_NODE; /// -- 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'