[edk2] [PATCH v1] MdePkg: SMMUv3 updates for IORT table definitions

Sami Mujawar posted 1 patch 6 years, 9 months ago
Failed in applying to current master (apply log)
MdePkg/Include/IndustryStandard/IoRemappingTable.h | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
[edk2] [PATCH v1] MdePkg: SMMUv3 updates for IORT table definitions
Posted by Sami Mujawar 6 years, 9 months ago
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>
Signed-off-by: Evan Lloyd <evan.lloyd@arm.com>
---

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.<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
Re: [edk2] [PATCH v1] MdePkg: SMMUv3 updates for IORT table definitions
Posted by Ard Biesheuvel 6 years, 9 months ago
On 5 March 2018 at 14:53, 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>
> Signed-off-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/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.<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
Re: [edk2] [PATCH v1] MdePkg: SMMUv3 updates for IORT table definitions
Posted by Sami Mujawar 6 years, 8 months ago
Hi Michael, Liming,

Is there anything else needed before this patch can be integrated?

Regards,

Sami Mujawar

-----Original Message-----
From: Ard Biesheuvel <ard.biesheuvel@linaro.org> 
Sent: 05 March 2018 02:58 PM
To: Sami Mujawar <Sami.Mujawar@arm.com>
Cc: edk2-devel@lists.01.org; Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming <liming.gao@intel.com>; Leif Lindholm <leif.lindholm@linaro.org>; Evan Lloyd <Evan.Lloyd@arm.com>; Matteo Carlini <Matteo.Carlini@arm.com>; Stephanie Hughes-Fitt <Stephanie.Hughes-Fitt@arm.com>; nd <nd@arm.com>
Subject: Re: [PATCH v1] MdePkg: SMMUv3 updates for IORT table definitions

On 5 March 2018 at 14:53, 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>
> Signed-off-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/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..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
Re: [edk2] [PATCH v1] MdePkg: SMMUv3 updates for IORT table definitions
Posted by Gao, Liming 6 years, 8 months ago
Sami:
  I open http://infocenter.arm.com/help/topic/com.arm.doc.den0049c/DEN0049C_IO_Remapping_Table.pdf, and find the latest version is March 2018 Revision D. Do you check the latest version?

Thanks
Liming
> -----Original Message-----
> From: Sami Mujawar [mailto:Sami.Mujawar@arm.com]
> Sent: Thursday, March 29, 2018 2:41 AM
> To: Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming <liming.gao@intel.com>
> Cc: edk2-devel@lists.01.org; Leif Lindholm <leif.lindholm@linaro.org>; Evan Lloyd <Evan.Lloyd@arm.com>; Matteo Carlini
> <Matteo.Carlini@arm.com>; Stephanie Hughes-Fitt <Stephanie.Hughes-Fitt@arm.com>; nd <nd@arm.com>; Ard Biesheuvel
> <ard.biesheuvel@linaro.org>
> Subject: RE: [PATCH v1] MdePkg: SMMUv3 updates for IORT table definitions
> 
> Hi Michael, Liming,
> 
> Is there anything else needed before this patch can be integrated?
> 
> Regards,
> 
> Sami Mujawar
> 
> -----Original Message-----
> From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> Sent: 05 March 2018 02:58 PM
> To: Sami Mujawar <Sami.Mujawar@arm.com>
> Cc: edk2-devel@lists.01.org; Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming <liming.gao@intel.com>; Leif Lindholm
> <leif.lindholm@linaro.org>; Evan Lloyd <Evan.Lloyd@arm.com>; Matteo Carlini <Matteo.Carlini@arm.com>; Stephanie Hughes-Fitt
> <Stephanie.Hughes-Fitt@arm.com>; nd <nd@arm.com>
> Subject: Re: [PATCH v1] MdePkg: SMMUv3 updates for IORT table definitions
> 
> On 5 March 2018 at 14:53, 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>
> > Signed-off-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/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..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