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 <sami.mujawar@arm.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
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.<BR>
+ Copyright (c) 2018, ARM Limited. All rights reserved.<BR>
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)'
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
On 19 March 2018 at 23:18, Sami Mujawar <sami.mujawar@arm.com> wrote:
> 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 <sami.mujawar@arm.com>
> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Mike, Liming: may we please have your acks on this patch please? This
does not belong in a staging branch, it reflects an ACPI spec update.
> ---
> 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.<BR>
> + Copyright (c) 2018, ARM Limited. All rights reserved.<BR>
>
> 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)'
>
>
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Hi Ard, Mike, Liming,
This patch is a precursor to the Dynamic Tables Framework and has hence been included in the patchset for the staging branch.
The original patch that needs integration in the edk2 master branch is https://lists.01.org/pipermail/edk2-devel/2018-March/022263.html
Regards,
Sami Mujawar
-----Original Message-----
From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Sent: 19 March 2018 03:22 PM
To: Sami Mujawar <Sami.Mujawar@arm.com>; Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming <liming.gao@intel.com>
Cc: edk2-devel@lists.01.org; nd <nd@arm.com>; Leif Lindholm <leif.lindholm@linaro.org>; Stephanie Hughes-Fitt <Stephanie.Hughes-Fitt@arm.com>
Subject: Re: [edk2] [staging/dynamictables PATCH 1/2] MdePkg: SMMUv3 updates for IORT table definitions
On 19 March 2018 at 23:18, Sami Mujawar <sami.mujawar@arm.com> wrote:
> 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 <sami.mujawar@arm.com>
> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Mike, Liming: may we please have your acks on this patch please? This does not belong in a staging branch, it reflects an ACPI spec update.
> ---
> 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..2e5cb45d7e2ffd4a0559ef706b71
> 874843e3fdbd 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.<BR>
> + Copyright (c) 2018, ARM Limited. All rights reserved.<BR>
>
> 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)'
>
>
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
> -----Original Message-----
> From: Sami Mujawar [mailto:sami.mujawar@arm.com]
> Sent: 19 March 2018 15:19
> To: edk2-devel@lists.01.org
> Cc: Evan Lloyd <Evan.Lloyd@arm.com>; leif.lindholm@linaro.org; Matteo
> Carlini <Matteo.Carlini@arm.com>; Stephanie Hughes-Fitt
> <Stephanie.Hughes-Fitt@arm.com>; nd <nd@arm.com>
> Subject: [staging/dynamictables PATCH 1/2] MdePkg: SMMUv3 updates for
> IORT table definitions
>
> 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 <sami.mujawar@arm.com>
> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Evan Lloyd <evan.lloyd@arm.com>
> ---
> 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..2e5cb45d7e2ffd4a0559ef
> 706b71874843e3fdbd 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.<BR>
> + Copyright (c) 2018, ARM Limited. All rights reserved.<BR>
>
> 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)'
>
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
© 2016 - 2026 Red Hat, Inc.