* [PATCH v1 1/2] MdePkg: SMMUv3 updates for IORT table definitions
2018-04-26 15:41 [PATCH v1 0/2] MdePkg: IORT Specification updates Sami Mujawar
@ 2018-04-26 15:41 ` Sami Mujawar
2018-04-26 15:41 ` [PATCH v1 2/2] MdePkg: IORT Specification Rev D updates Sami Mujawar
2018-04-27 2:19 ` [PATCH v1 0/2] MdePkg: IORT Specification updates Gao, Liming
2 siblings, 0 replies; 7+ messages in thread
From: Sami Mujawar @ 2018-04-26 15:41 UTC (permalink / raw)
To: edk2-devel
Cc: ard.biesheuvel, leif.lindholm, Matteo.Carlini,
Stephanie.Hughes-Fitt, nd, michael.d.kinney, liming.gao,
evan.lloyd
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: Evan Lloyd <evan.lloyd@arm.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
The changes can be seen at:
https://github.com/samimujawar/edk2/tree/253_iort_update_v1
Notes:
v1:
- Updated SMMUv3 node structure and associated flags. [SAMI]
- Patch ACKed by Ard Biesheuvel. [Ard]
- A new version of the IORT specification has been released. [Liming]
- This patch was submitted before the new IORT specification
was published. Submitting separate patch for the IORT spec
Rev D updated. [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.<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)'
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v1 2/2] MdePkg: IORT Specification Rev D updates
2018-04-26 15:41 [PATCH v1 0/2] MdePkg: IORT Specification updates Sami Mujawar
2018-04-26 15:41 ` [PATCH v1 1/2] MdePkg: SMMUv3 updates for IORT table definitions Sami Mujawar
@ 2018-04-26 15:41 ` Sami Mujawar
2018-04-26 16:10 ` Ard Biesheuvel
2018-04-27 2:19 ` [PATCH v1 0/2] MdePkg: IORT Specification updates Gao, Liming
2 siblings, 1 reply; 7+ messages in thread
From: Sami Mujawar @ 2018-04-26 15:41 UTC (permalink / raw)
To: edk2-devel
Cc: ard.biesheuvel, leif.lindholm, Matteo.Carlini,
Stephanie.Hughes-Fitt, nd, michael.d.kinney, liming.gao,
evan.lloyd
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 <sami.mujawar@arm.com>
Reviewed-by: Evan Lloyd <evan.lloyd@arm.com>
---
The changes can be seen at:
https://github.com/samimujawar/edk2/tree/253_iort_update_v1
Notes:
v1:
- Updated for IORT Specification Revision D. [SAMI]
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.<BR>
Copyright (c) 2018, ARM Limited. All rights reserved.<BR>
@@ -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)'
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v1 2/2] MdePkg: IORT Specification Rev D updates
2018-04-26 15:41 ` [PATCH v1 2/2] MdePkg: IORT Specification Rev D updates Sami Mujawar
@ 2018-04-26 16:10 ` Ard Biesheuvel
0 siblings, 0 replies; 7+ messages in thread
From: Ard Biesheuvel @ 2018-04-26 16:10 UTC (permalink / raw)
To: Sami Mujawar
Cc: edk2-devel@lists.01.org, Leif Lindholm, Matteo Carlini,
Stephanie Hughes-Fitt, nd, Kinney, Michael D, Gao, Liming,
Evan Lloyd
On 26 April 2018 at 17:41, Sami Mujawar <sami.mujawar@arm.com> wrote:
> 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 <sami.mujawar@arm.com>
> Reviewed-by: Evan Lloyd <evan.lloyd@arm.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> ---
> The changes can be seen at:
> https://github.com/samimujawar/edk2/tree/253_iort_update_v1
>
> Notes:
> v1:
> - Updated for IORT Specification Revision D. [SAMI]
>
> 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.<BR>
> Copyright (c) 2018, ARM Limited. All rights reserved.<BR>
> @@ -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)'
>
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v1 0/2] MdePkg: IORT Specification updates
2018-04-26 15:41 [PATCH v1 0/2] MdePkg: IORT Specification updates Sami Mujawar
2018-04-26 15:41 ` [PATCH v1 1/2] MdePkg: SMMUv3 updates for IORT table definitions Sami Mujawar
2018-04-26 15:41 ` [PATCH v1 2/2] MdePkg: IORT Specification Rev D updates Sami Mujawar
@ 2018-04-27 2:19 ` Gao, Liming
2018-06-27 19:53 ` Sami Mujawar
2 siblings, 1 reply; 7+ messages in thread
From: Gao, Liming @ 2018-04-27 2:19 UTC (permalink / raw)
To: Sami Mujawar, edk2-devel@lists.01.org
Cc: Stephanie.Hughes-Fitt@arm.com, ard.biesheuvel@linaro.org,
leif.lindholm@linaro.org, Kinney, Michael D, nd@arm.com
Thanks for your update.
Reviewed-by: Liming Gao <liming.gao@intel.com>
> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Sami Mujawar
> Sent: Thursday, April 26, 2018 11:41 PM
> To: edk2-devel@lists.01.org
> Cc: Stephanie.Hughes-Fitt@arm.com; ard.biesheuvel@linaro.org; leif.lindholm@linaro.org; Gao, Liming <liming.gao@intel.com>;
> Kinney, Michael D <michael.d.kinney@intel.com>; nd@arm.com
> Subject: [edk2] [PATCH v1 0/2] MdePkg: IORT Specification updates
>
> The IORT specification was updated soon after the patch "MdePkg: SMMUv3
> updates for IORT table definitions" (included again in this series) was
> submitted.
>
> In response to query regarding the changes for the latest revision (See
> https://lists.01.org/pipermail/edk2-devel/2018-March/023295.html);
> submitting a separate patch for the IORT specification Rev D, March 2018
> updates.
>
> Patchset:
> 1. MdePkg: SMMUv3 updates for IORT table definitions
> - Patch already ACKed by Ard Biesheuvel, however has not yet
> been merged in edk2.
>
> 2. MdePkg: IORT Specification Rev D updates
> - Patch for IORT Spec Rev D, March 2018 updates.
>
> Sami Mujawar (2):
> MdePkg: SMMUv3 updates for IORT table definitions
> MdePkg: IORT Specification Rev D updates
>
> MdePkg/Include/IndustryStandard/IoRemappingTable.h | 17 ++++++++++++++---
> 1 file changed, 14 insertions(+), 3 deletions(-)
>
> --
> 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
>
>
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v1 0/2] MdePkg: IORT Specification updates
2018-04-27 2:19 ` [PATCH v1 0/2] MdePkg: IORT Specification updates Gao, Liming
@ 2018-06-27 19:53 ` Sami Mujawar
2018-06-28 13:09 ` Gao, Liming
0 siblings, 1 reply; 7+ messages in thread
From: Sami Mujawar @ 2018-06-27 19:53 UTC (permalink / raw)
To: Gao, Liming, edk2-devel@lists.01.org, Kinney, Michael D
Cc: Stephanie Hughes-Fitt, ard.biesheuvel@linaro.org,
leif.lindholm@linaro.org, Evan Lloyd, nd
Hi Liming, Michael,
Looks like this patchset (https://lists.01.org/pipermail/edk2-devel/2018-April/024255.html) is not yet in edk2.
Can you let me know if you need anything else from me before this patchset can be merged, please?
Regards,
Sami Mujawar
-----Original Message-----
From: Gao, Liming <liming.gao@intel.com>
Sent: 27 April 2018 03:20 AM
To: Sami Mujawar <Sami.Mujawar@arm.com>; edk2-devel@lists.01.org
Cc: Stephanie Hughes-Fitt <Stephanie.Hughes-Fitt@arm.com>; ard.biesheuvel@linaro.org; leif.lindholm@linaro.org; Kinney, Michael D <michael.d.kinney@intel.com>; nd <nd@arm.com>
Subject: RE: [edk2] [PATCH v1 0/2] MdePkg: IORT Specification updates
Thanks for your update.
Reviewed-by: Liming Gao <liming.gao@intel.com>
> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
> Sami Mujawar
> Sent: Thursday, April 26, 2018 11:41 PM
> To: edk2-devel@lists.01.org
> Cc: Stephanie.Hughes-Fitt@arm.com; ard.biesheuvel@linaro.org;
> leif.lindholm@linaro.org; Gao, Liming <liming.gao@intel.com>; Kinney,
> Michael D <michael.d.kinney@intel.com>; nd@arm.com
> Subject: [edk2] [PATCH v1 0/2] MdePkg: IORT Specification updates
>
> The IORT specification was updated soon after the patch "MdePkg:
> SMMUv3 updates for IORT table definitions" (included again in this
> series) was submitted.
>
> In response to query regarding the changes for the latest revision
> (See
> https://lists.01.org/pipermail/edk2-devel/2018-March/023295.html);
> submitting a separate patch for the IORT specification Rev D, March
> 2018 updates.
>
> Patchset:
> 1. MdePkg: SMMUv3 updates for IORT table definitions
> - Patch already ACKed by Ard Biesheuvel, however has not yet
> been merged in edk2.
>
> 2. MdePkg: IORT Specification Rev D updates
> - Patch for IORT Spec Rev D, March 2018 updates.
>
> Sami Mujawar (2):
> MdePkg: SMMUv3 updates for IORT table definitions
> MdePkg: IORT Specification Rev D updates
>
> MdePkg/Include/IndustryStandard/IoRemappingTable.h | 17
> ++++++++++++++---
> 1 file changed, 14 insertions(+), 3 deletions(-)
>
> --
> 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
>
>
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v1 0/2] MdePkg: IORT Specification updates
2018-06-27 19:53 ` Sami Mujawar
@ 2018-06-28 13:09 ` Gao, Liming
0 siblings, 0 replies; 7+ messages in thread
From: Gao, Liming @ 2018-06-28 13:09 UTC (permalink / raw)
To: Sami Mujawar, edk2-devel@lists.01.org, Kinney, Michael D
Cc: Stephanie Hughes-Fitt, ard.biesheuvel@linaro.org,
leif.lindholm@linaro.org, Evan Lloyd, nd
Sorry for late.
Push them at 27e983.. 1e2bf5
> -----Original Message-----
> From: Sami Mujawar [mailto:Sami.Mujawar@arm.com]
> Sent: Thursday, June 28, 2018 3:54 AM
> To: Gao, Liming <liming.gao@intel.com>; edk2-devel@lists.01.org; Kinney, Michael D <michael.d.kinney@intel.com>
> Cc: Stephanie Hughes-Fitt <Stephanie.Hughes-Fitt@arm.com>; ard.biesheuvel@linaro.org; leif.lindholm@linaro.org; Evan Lloyd
> <Evan.Lloyd@arm.com>; nd <nd@arm.com>
> Subject: RE: [edk2] [PATCH v1 0/2] MdePkg: IORT Specification updates
>
> Hi Liming, Michael,
>
> Looks like this patchset (https://lists.01.org/pipermail/edk2-devel/2018-April/024255.html) is not yet in edk2.
>
> Can you let me know if you need anything else from me before this patchset can be merged, please?
>
> Regards,
>
> Sami Mujawar
>
> -----Original Message-----
> From: Gao, Liming <liming.gao@intel.com>
> Sent: 27 April 2018 03:20 AM
> To: Sami Mujawar <Sami.Mujawar@arm.com>; edk2-devel@lists.01.org
> Cc: Stephanie Hughes-Fitt <Stephanie.Hughes-Fitt@arm.com>; ard.biesheuvel@linaro.org; leif.lindholm@linaro.org; Kinney, Michael D
> <michael.d.kinney@intel.com>; nd <nd@arm.com>
> Subject: RE: [edk2] [PATCH v1 0/2] MdePkg: IORT Specification updates
>
> Thanks for your update.
> Reviewed-by: Liming Gao <liming.gao@intel.com>
>
> > -----Original Message-----
> > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
> > Sami Mujawar
> > Sent: Thursday, April 26, 2018 11:41 PM
> > To: edk2-devel@lists.01.org
> > Cc: Stephanie.Hughes-Fitt@arm.com; ard.biesheuvel@linaro.org;
> > leif.lindholm@linaro.org; Gao, Liming <liming.gao@intel.com>; Kinney,
> > Michael D <michael.d.kinney@intel.com>; nd@arm.com
> > Subject: [edk2] [PATCH v1 0/2] MdePkg: IORT Specification updates
> >
> > The IORT specification was updated soon after the patch "MdePkg:
> > SMMUv3 updates for IORT table definitions" (included again in this
> > series) was submitted.
> >
> > In response to query regarding the changes for the latest revision
> > (See
> > https://lists.01.org/pipermail/edk2-devel/2018-March/023295.html);
> > submitting a separate patch for the IORT specification Rev D, March
> > 2018 updates.
> >
> > Patchset:
> > 1. MdePkg: SMMUv3 updates for IORT table definitions
> > - Patch already ACKed by Ard Biesheuvel, however has not yet
> > been merged in edk2.
> >
> > 2. MdePkg: IORT Specification Rev D updates
> > - Patch for IORT Spec Rev D, March 2018 updates.
> >
> > Sami Mujawar (2):
> > MdePkg: SMMUv3 updates for IORT table definitions
> > MdePkg: IORT Specification Rev D updates
> >
> > MdePkg/Include/IndustryStandard/IoRemappingTable.h | 17
> > ++++++++++++++---
> > 1 file changed, 14 insertions(+), 3 deletions(-)
> >
> > --
> > 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
> >
> >
> > _______________________________________________
> > edk2-devel mailing list
> > edk2-devel@lists.01.org
> > https://lists.01.org/mailman/listinfo/edk2-devel
^ permalink raw reply [flat|nested] 7+ messages in thread