* [PATCH v2 0/6] DynamicTablesPkg: Framework updates and fixes
@ 2019-03-19 13:47 Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 1/6] DynamicTablesPkg: Fix protocol section Sami Mujawar
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: Sami Mujawar @ 2019-03-19 13:47 UTC (permalink / raw)
To: edk2-devel
Cc: alexei.fedorov, lersek, leif.lindholm, Matteo.Carlini,
Stephanie.Hughes-Fitt, nd
This patch series was originally merged in edk2 master. However, this
was later reverted as it was merged during the Soft Feature Freeze for
edk2-stable201903.
Resubmitting this patch series as the edk2 merge window is now open.
This patch series updates the Dynamic Tables Framework to
incorporate the following changes:
* Fix protocol section.
* Add options for OEMs to provide OEM Table ID and revision.
* Update DBG2_DEBUG_PORT_DDI macro to remove unused parameter.
* Remove GIC Distributor ID field.
* Minor updates to comments and typo fixes.
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Alexei Fedorov <alexei.fedorov@arm.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
The changes can be seen at:
https://github.com/samimujawar/edk2/tree/473_dynamic_tables_framework_v2
The corresponding edk2-platform code changes can be seen at:
https://github.com/samimujawar/edk2-platforms/tree/473_dynamic_tables_framework_v1
Sami Mujawar (6):
DynamicTablesPkg: Fix protocol section
DynamicTablesPkg: Rename enum used for ID Mapping
DynamicTablesPkg: Add OEM Info
DynamicTablesPkg: DGB2: Update DBG2_DEBUG_PORT_DDI
DynamicTablesPkg: Remove GIC Distributor Id field
DynamicTablesPkg: Minor updates and fix typos
DynamicTablesPkg/Drivers/DynamicTableFactoryDxe/DynamicTableFactoryDxe.inf | 7 +-
DynamicTablesPkg/Drivers/DynamicTableManagerDxe/DynamicTableManagerDxe.inf | 7 +-
DynamicTablesPkg/Include/ArmNameSpaceObjects.h | 73 +++++++++++++++-----
DynamicTablesPkg/Include/Library/TableHelperLib.h | 4 +-
DynamicTablesPkg/Include/StandardNameSpaceObjects.h | 18 +++++
DynamicTablesPkg/Library/Acpi/Arm/AcpiDbg2LibArm/Dbg2Generator.c | 7 +-
DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c | 2 +-
DynamicTablesPkg/Library/Acpi/Arm/AcpiGtdtLibArm/GtdtGenerator.c | 2 +-
DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c | 8 +--
DynamicTablesPkg/Library/Acpi/Arm/AcpiMadtLibArm/MadtGenerator.c | 6 +-
DynamicTablesPkg/Library/Acpi/Arm/AcpiMcfgLibArm/McfgGenerator.c | 2 +-
DynamicTablesPkg/Library/Acpi/Arm/AcpiSpcrLibArm/SpcrGenerator.c | 2 +-
DynamicTablesPkg/Library/Common/TableHelperLib/TableHelper.c | 26 +++++--
13 files changed, 116 insertions(+), 48 deletions(-)
--
'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 1/6] DynamicTablesPkg: Fix protocol section
2019-03-19 13:47 [PATCH v2 0/6] DynamicTablesPkg: Framework updates and fixes Sami Mujawar
@ 2019-03-19 13:47 ` Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 2/6] DynamicTablesPkg: Rename enum used for ID Mapping Sami Mujawar
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Sami Mujawar @ 2019-03-19 13:47 UTC (permalink / raw)
To: edk2-devel
Cc: alexei.fedorov, lersek, leif.lindholm, Matteo.Carlini,
Stephanie.Hughes-Fitt, nd
This patch was originally merged in edk2 master at
bde673b2dcd1b087af7f49dd5f0c3b82b02172a5. However, this was
later reverted at 7d180efeaa03df25973416dc0aad099f4fe7e251
as it was merged during the Soft Feature Freeze for
edk2-stable201903.
Resubmitting this patch as the edk2 merge window is now open.
Updated the Protocols section to reflect the protocols
that are produced or consumed.
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Alexei Fedorov <alexei.fedorov@arm.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
Reviewed-by: Alexei Fedorov <alexei.fedorov@arm.com>
---
DynamicTablesPkg/Drivers/DynamicTableFactoryDxe/DynamicTableFactoryDxe.inf | 7 ++-----
DynamicTablesPkg/Drivers/DynamicTableManagerDxe/DynamicTableManagerDxe.inf | 7 ++++---
2 files changed, 6 insertions(+), 8 deletions(-)
diff --git a/DynamicTablesPkg/Drivers/DynamicTableFactoryDxe/DynamicTableFactoryDxe.inf b/DynamicTablesPkg/Drivers/DynamicTableFactoryDxe/DynamicTableFactoryDxe.inf
index 740811d0fc0590543a62360e6753eb04fb675d70..02c907c38023e8b44829a38ed93436904d8cf3d3 100644
--- a/DynamicTablesPkg/Drivers/DynamicTableFactoryDxe/DynamicTableFactoryDxe.inf
+++ b/DynamicTablesPkg/Drivers/DynamicTableFactoryDxe/DynamicTableFactoryDxe.inf
@@ -1,7 +1,7 @@
## @file
# Module to manage the list of available table factories.
#
-# Copyright (c) 2017 - 2018, ARM Limited. All rights reserved.
+# Copyright (c) 2017 - 2019, 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
@@ -51,10 +51,7 @@ [FixedPcd]
gEfiMdeModulePkgTokenSpaceGuid.PcdMaxCustomDTGenerators
[Protocols]
- gEfiAcpiTableProtocolGuid # PROTOCOL ALWAYS_CONSUMED
- gEfiSmbiosProtocolGuid # PROTOCOL ALWAYS_CONSUMED
- gEdkiiConfigurationManagerProtocolGuid
- gEdkiiDynamicTableFactoryProtocolGuid
+ gEdkiiDynamicTableFactoryProtocolGuid # PRODUCES
[Depex]
TRUE
diff --git a/DynamicTablesPkg/Drivers/DynamicTableManagerDxe/DynamicTableManagerDxe.inf b/DynamicTablesPkg/Drivers/DynamicTableManagerDxe/DynamicTableManagerDxe.inf
index fef8b20672fb943b78302a152fcf0f66db264b0a..e78218a914ce993f3e605841e2bffae700076dd0 100644
--- a/DynamicTablesPkg/Drivers/DynamicTableManagerDxe/DynamicTableManagerDxe.inf
+++ b/DynamicTablesPkg/Drivers/DynamicTableManagerDxe/DynamicTableManagerDxe.inf
@@ -1,7 +1,7 @@
## @file
# Module that drives the table generation and installation process.
#
-# Copyright (c) 2017 - 2018, ARM Limited. All rights reserved.
+# Copyright (c) 2017 - 2019, 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
@@ -42,8 +42,9 @@ [LibraryClasses]
[Protocols]
gEfiAcpiTableProtocolGuid # PROTOCOL ALWAYS_CONSUMED
- gEdkiiConfigurationManagerProtocolGuid
- gEdkiiDynamicTableFactoryProtocolGuid
+
+ gEdkiiConfigurationManagerProtocolGuid # PROTOCOL ALWAYS_CONSUMED
+ gEdkiiDynamicTableFactoryProtocolGuid # PROTOCOL ALWAYS_CONSUMED
[Depex]
gEfiAcpiTableProtocolGuid AND
--
'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 2/6] DynamicTablesPkg: Rename enum used for ID Mapping
2019-03-19 13:47 [PATCH v2 0/6] DynamicTablesPkg: Framework updates and fixes Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 1/6] DynamicTablesPkg: Fix protocol section Sami Mujawar
@ 2019-03-19 13:47 ` Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 3/6] DynamicTablesPkg: Add OEM Info Sami Mujawar
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Sami Mujawar @ 2019-03-19 13:47 UTC (permalink / raw)
To: edk2-devel
Cc: alexei.fedorov, lersek, leif.lindholm, Matteo.Carlini,
Stephanie.Hughes-Fitt, nd
This patch was originally merged in edk2 master at
1d49a75367ef6827b8b8f77f61e9ce245d1bdee3. However, this was
later reverted at 334111b0dab80394aeb1ebb8f0f3314847e2dc1f
as it was merged during the Soft Feature Freeze for
edk2-stable201903.
Resubmitting this patch as the edk2 merge window is now open.
Renamed the enum EArmObjIdMapping to EArmObjIdMappingArray
and updated the IORT generator accordingly.
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Alexei Fedorov <alexei.fedorov@arm.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
Reviewed-by: Alexei Fedorov <alexei.fedorov@arm.com>
---
DynamicTablesPkg/Include/ArmNameSpaceObjects.h | 2 +-
DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
index 93cb6949f0eb2ac2ad3524494e4a14c7a6fab4b8..2adaa788083e4e15d049f5f6b6312f77f3c02488 100644
--- a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
+++ b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
@@ -52,7 +52,7 @@ typedef enum ArmObjectID {
EArmObjSmmuV3, ///< 22 - SMMUv3
EArmObjPmcg, ///< 23 - PMCG
EArmObjGicItsIdentifierArray, ///< 24 - GIC ITS Identifier Array
- EArmObjIdMapping, ///< 25 - ID Mapping
+ EArmObjIdMappingArray, ///< 25 - ID Mapping Array
EArmObjSmmuInterruptArray, ///< 26 - SMMU Interrupt Array
EArmObjMax
} EARM_OBJECT_ID;
diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c
index a3ee60664ecbeb1b12b01683f838e11804884daf..b53c4bb47798d4ad441db1fe1b1e5b180e313403 100644
--- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c
+++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c
@@ -44,7 +44,7 @@ Requirements:
- EArmObjSmmuV3
- EArmObjPmcg
- EArmObjGicItsIdentifierArray
- - EArmObjIdMapping
+ - EArmObjIdMappingArray
- EArmObjGicItsIdentifierArray
*/
@@ -116,7 +116,7 @@ GET_OBJECT_LIST (
*/
GET_OBJECT_LIST (
EObjNameSpaceArm,
- EArmObjIdMapping,
+ EArmObjIdMappingArray,
CM_ARM_ID_MAPPING
);
@@ -653,7 +653,7 @@ AddIdMappingArray (
Generator = (ACPI_IORT_GENERATOR*)This;
// Get the Id Mapping Array
- Status = GetEArmObjIdMapping (
+ Status = GetEArmObjIdMappingArray (
CfgMgrProtocol,
IdMappingToken,
&IdMappings,
--
'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 3/6] DynamicTablesPkg: Add OEM Info
2019-03-19 13:47 [PATCH v2 0/6] DynamicTablesPkg: Framework updates and fixes Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 1/6] DynamicTablesPkg: Fix protocol section Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 2/6] DynamicTablesPkg: Rename enum used for ID Mapping Sami Mujawar
@ 2019-03-19 13:47 ` Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 4/6] DynamicTablesPkg: DGB2: Update DBG2_DEBUG_PORT_DDI Sami Mujawar
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Sami Mujawar @ 2019-03-19 13:47 UTC (permalink / raw)
To: edk2-devel
Cc: alexei.fedorov, lersek, leif.lindholm, Matteo.Carlini,
Stephanie.Hughes-Fitt, nd
This patch originally merged in edk2 master at
c788bdaba47536447ae37518a96d92e0da54aad7. However, this was
later reverted at bdbbedea949eb4b10d24110c0e559b03c7a6bce4
as it was merged during the Soft Feature Freeze for
edk2-stable201903.
Resubmitting this patch as the edk2 merge window is now open.
Added option for OEMs to provide OEM Table ID and
OEM Revision for ACPI tables.
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Alexei Fedorov <alexei.fedorov@arm.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
Reviewed-by: Alexei Fedorov <alexei.fedorov@arm.com>
---
DynamicTablesPkg/Include/Library/TableHelperLib.h | 4 +--
DynamicTablesPkg/Include/StandardNameSpaceObjects.h | 18 ++++++++++++++
DynamicTablesPkg/Library/Acpi/Arm/AcpiDbg2LibArm/Dbg2Generator.c | 2 +-
DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c | 2 +-
DynamicTablesPkg/Library/Acpi/Arm/AcpiGtdtLibArm/GtdtGenerator.c | 2 +-
DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c | 2 +-
DynamicTablesPkg/Library/Acpi/Arm/AcpiMadtLibArm/MadtGenerator.c | 2 +-
DynamicTablesPkg/Library/Acpi/Arm/AcpiMcfgLibArm/McfgGenerator.c | 2 +-
DynamicTablesPkg/Library/Acpi/Arm/AcpiSpcrLibArm/SpcrGenerator.c | 2 +-
DynamicTablesPkg/Library/Common/TableHelperLib/TableHelper.c | 26 ++++++++++++++------
10 files changed, 46 insertions(+), 16 deletions(-)
diff --git a/DynamicTablesPkg/Include/Library/TableHelperLib.h b/DynamicTablesPkg/Include/Library/TableHelperLib.h
index 3c4e1d23d2e6955388ab0b51fb57779f2225beb2..0f872bc3d08bf78e33bd8dab866e7bf57e00cb8c 100644
--- a/DynamicTablesPkg/Include/Library/TableHelperLib.h
+++ b/DynamicTablesPkg/Include/Library/TableHelperLib.h
@@ -45,7 +45,7 @@ GetCgfMgrInfo (
@param [in] Generator Pointer to the ACPI table Generator.
@param [in,out] AcpiHeader Pointer to the ACPI table header to be
updated.
- @param [in] Revision Revision of the ACPI table.
+ @param [in] AcpiTableInfo Pointer to the ACPI table info structure.
@param [in] Length Length of the ACPI table.
@retval EFI_SUCCESS The ACPI table is updated successfully.
@@ -61,7 +61,7 @@ AddAcpiHeader (
IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL * CONST CfgMgrProtocol,
IN CONST ACPI_TABLE_GENERATOR * CONST Generator,
IN OUT EFI_ACPI_DESCRIPTION_HEADER * CONST AcpiHeader,
- IN CONST UINT32 Revision,
+ IN CONST CM_STD_OBJ_ACPI_TABLE_INFO * CONST AcpiTableInfo,
IN CONST UINT32 Length
);
diff --git a/DynamicTablesPkg/Include/StandardNameSpaceObjects.h b/DynamicTablesPkg/Include/StandardNameSpaceObjects.h
index 4377ee8f785399b02fec824f3a34d2f4ed3b1c01..58503858b27141cf7647a410c4b0b3fa574033de 100644
--- a/DynamicTablesPkg/Include/StandardNameSpaceObjects.h
+++ b/DynamicTablesPkg/Include/StandardNameSpaceObjects.h
@@ -93,6 +93,24 @@ typedef struct CmAStdObjAcpiTableInfo {
/// Optional pointer to the ACPI table data
EFI_ACPI_DESCRIPTION_HEADER * AcpiTableData;
+ /// An OEM-supplied string that the OEM uses to identify the particular
+ /// data table. This field is particularly useful when defining a definition
+ /// block to distinguish definition block functions. The OEM assigns each
+ /// dissimilar table a new OEM Table ID.
+ /// This field could be constructed using the SIGNATURE_64() macro.
+ /// e.g. SIGNATURE_64 ('A','R','M','H','G','T','D','T')
+ /// Note: If this field is not populated (has value of Zero), then the
+ /// Generators shall populate this information using part of the
+ /// CM_STD_OBJ_CONFIGURATION_MANAGER_INFO.OemId field and the
+ /// ACPI table signature.
+ UINT64 OemTableId;
+
+ /// An OEM-supplied revision number. Larger numbers are assumed to be
+ /// newer revisions.
+ /// Note: If this field is not populated (has value of Zero), then the
+ /// Generators shall populate this information using the revision of the
+ /// Configuration Manager (CM_STD_OBJ_CONFIGURATION_MANAGER_INFO.Revision).
+ UINT32 OemRevision;
} CM_STD_OBJ_ACPI_TABLE_INFO;
/** A structure used to describe the SMBIOS table generators to be invoked.
diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiDbg2LibArm/Dbg2Generator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiDbg2LibArm/Dbg2Generator.c
index e21e2b660634b1aedce8167b74573694d6df2a3b..697cfc46abaedf34d30abf26e7ebb2b4d271822a 100644
--- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiDbg2LibArm/Dbg2Generator.c
+++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiDbg2LibArm/Dbg2Generator.c
@@ -342,7 +342,7 @@ BuildDbg2Table (
CfgMgrProtocol,
This,
(EFI_ACPI_DESCRIPTION_HEADER*)&AcpiDbg2,
- AcpiTableInfo->AcpiTableRevision,
+ AcpiTableInfo,
sizeof (DBG2_TABLE)
);
if (EFI_ERROR (Status)) {
diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c
index 62927b51d6d7c1585da1cb0d59785e2382639002..6699901b42a63a152027de59887ed097748ece91 100644
--- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c
+++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c
@@ -537,7 +537,7 @@ BuildFadtTable (
CfgMgrProtocol,
This,
(EFI_ACPI_DESCRIPTION_HEADER*)&AcpiFadt,
- AcpiTableInfo->AcpiTableRevision,
+ AcpiTableInfo,
sizeof (EFI_ACPI_6_2_FIXED_ACPI_DESCRIPTION_TABLE)
);
if (EFI_ERROR (Status)) {
diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiGtdtLibArm/GtdtGenerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiGtdtLibArm/GtdtGenerator.c
index 70f52507bc7f12a776f76271b3f378bc62e717ba..d58794ee3ef5b72a8b2e3eb930ad5ab5bbb57c38 100644
--- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiGtdtLibArm/GtdtGenerator.c
+++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiGtdtLibArm/GtdtGenerator.c
@@ -518,7 +518,7 @@ BuildGtdtTable (
CfgMgrProtocol,
This,
&Gtdt->Header,
- AcpiTableInfo->AcpiTableRevision,
+ AcpiTableInfo,
TableSize
);
if (EFI_ERROR (Status)) {
diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c
index b53c4bb47798d4ad441db1fe1b1e5b180e313403..2bac7a59ea40d6a3cae675b39d5df26ab7783a29 100644
--- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c
+++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c
@@ -1798,7 +1798,7 @@ BuildIortTable (
CfgMgrProtocol,
This,
&Iort->Header,
- AcpiTableInfo->AcpiTableRevision,
+ AcpiTableInfo,
TableSize
);
if (EFI_ERROR (Status)) {
diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiMadtLibArm/MadtGenerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiMadtLibArm/MadtGenerator.c
index 06794758308e028b7d8da06670b1793cbdb3ae81..1ee0b9e006bfa00ea5bbf6aa64209dac244c90a0 100644
--- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiMadtLibArm/MadtGenerator.c
+++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiMadtLibArm/MadtGenerator.c
@@ -569,7 +569,7 @@ BuildMadtTable (
CfgMgrProtocol,
This,
&Madt->Header,
- AcpiTableInfo->AcpiTableRevision,
+ AcpiTableInfo,
TableSize
);
if (EFI_ERROR (Status)) {
diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiMcfgLibArm/McfgGenerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiMcfgLibArm/McfgGenerator.c
index 29eb72bd917227e87b8f126aa098a6e0ff3918cc..2131683a35158f40304892da9ab12e547483a4bc 100644
--- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiMcfgLibArm/McfgGenerator.c
+++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiMcfgLibArm/McfgGenerator.c
@@ -220,7 +220,7 @@ BuildMcfgTable (
CfgMgrProtocol,
This,
&Mcfg->Header,
- AcpiTableInfo->AcpiTableRevision,
+ AcpiTableInfo,
TableSize
);
if (EFI_ERROR (Status)) {
diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSpcrLibArm/SpcrGenerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSpcrLibArm/SpcrGenerator.c
index a4654acb39812af022a1e678b78e31415d94ef30..6778d7673e71e6347f21935b5f709b690f64dab4 100644
--- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSpcrLibArm/SpcrGenerator.c
+++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSpcrLibArm/SpcrGenerator.c
@@ -211,7 +211,7 @@ BuildSpcrTable (
CfgMgrProtocol,
This,
(EFI_ACPI_DESCRIPTION_HEADER*)&AcpiSpcr,
- AcpiTableInfo->AcpiTableRevision,
+ AcpiTableInfo,
sizeof (EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE)
);
if (EFI_ERROR (Status)) {
diff --git a/DynamicTablesPkg/Library/Common/TableHelperLib/TableHelper.c b/DynamicTablesPkg/Library/Common/TableHelperLib/TableHelper.c
index 02860ddf233b4a44c30450c8c090b416f1e07d81..203207bac2b202f568072b68e8cb25c5c258045f 100644
--- a/DynamicTablesPkg/Library/Common/TableHelperLib/TableHelper.c
+++ b/DynamicTablesPkg/Library/Common/TableHelperLib/TableHelper.c
@@ -100,7 +100,7 @@ GetCgfMgrInfo (
@param [in] Generator Pointer to the ACPI table Generator.
@param [in,out] AcpiHeader Pointer to the ACPI table header to be
updated.
- @param [in] Revision Revision of the ACPI table.
+ @param [in] AcpiTableInfo Pointer to the ACPI table info structure.
@param [in] Length Length of the ACPI table.
@retval EFI_SUCCESS The ACPI table is updated successfully.
@@ -116,7 +116,7 @@ AddAcpiHeader (
IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL * CONST CfgMgrProtocol,
IN CONST ACPI_TABLE_GENERATOR * CONST Generator,
IN OUT EFI_ACPI_DESCRIPTION_HEADER * CONST AcpiHeader,
- IN CONST UINT32 Revision,
+ IN CONST CM_STD_OBJ_ACPI_TABLE_INFO * CONST AcpiTableInfo,
IN CONST UINT32 Length
)
{
@@ -151,7 +151,7 @@ AddAcpiHeader (
// UINT32 Length
AcpiHeader->Length = Length;
// UINT8 Revision
- AcpiHeader->Revision = Revision;
+ AcpiHeader->Revision = AcpiTableInfo->AcpiTableRevision;
// UINT8 Checksum
AcpiHeader->Checksum = 0;
@@ -159,12 +159,24 @@ AddAcpiHeader (
CopyMem (AcpiHeader->OemId, CfgMfrInfo->OemId, sizeof (AcpiHeader->OemId));
// UINT64 OemTableId
- AcpiHeader->OemTableId = Generator->CreatorId;
- AcpiHeader->OemTableId <<= 32;
- AcpiHeader->OemTableId |= Generator->AcpiTableSignature;
+ if (AcpiTableInfo->OemTableId != 0) {
+ AcpiHeader->OemTableId = AcpiTableInfo->OemTableId;
+ } else {
+ AcpiHeader->OemTableId = SIGNATURE_32 (
+ CfgMfrInfo->OemId[0],
+ CfgMfrInfo->OemId[1],
+ CfgMfrInfo->OemId[2],
+ CfgMfrInfo->OemId[3]
+ ) |
+ ((UINT64)Generator->AcpiTableSignature << 32);
+ }
// UINT32 OemRevision
- AcpiHeader->OemRevision = CfgMfrInfo->Revision;
+ if (AcpiTableInfo->OemRevision != 0) {
+ AcpiHeader->OemRevision = AcpiTableInfo->OemRevision;
+ } else {
+ AcpiHeader->OemRevision = CfgMfrInfo->Revision;
+ }
// UINT32 CreatorId
AcpiHeader->CreatorId = Generator->CreatorId;
--
'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 4/6] DynamicTablesPkg: DGB2: Update DBG2_DEBUG_PORT_DDI
2019-03-19 13:47 [PATCH v2 0/6] DynamicTablesPkg: Framework updates and fixes Sami Mujawar
` (2 preceding siblings ...)
2019-03-19 13:47 ` [PATCH v2 3/6] DynamicTablesPkg: Add OEM Info Sami Mujawar
@ 2019-03-19 13:47 ` Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 5/6] DynamicTablesPkg: Remove GIC Distributor Id field Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 6/6] DynamicTablesPkg: Minor updates and fix typos Sami Mujawar
5 siblings, 0 replies; 7+ messages in thread
From: Sami Mujawar @ 2019-03-19 13:47 UTC (permalink / raw)
To: edk2-devel
Cc: alexei.fedorov, lersek, leif.lindholm, Matteo.Carlini,
Stephanie.Hughes-Fitt, nd
This patch was originally merged in edk2 master at
6814256083a90ef218e7ae240e51922045175df1. However, this was
later reverted at db8382ef5e44bd07654fb4726b77f3c329210561
as it was merged during the Soft Feature Freeze for
edk2-stable201903.
Resubmitting this patch as the edk2 merge window is now open.
The DBG2_DEBUG_PORT_DDI() macro supports adding only one
Generic Base Address Register. Therefore, removed the
superfluous parameter NumReg and updated the macro to
use DBG2_NUMBER_OF_GENERIC_ADDRESS_REGISTERS which has
a value 1.
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Alexei Fedorov <alexei.fedorov@arm.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
Reviewed-by: Alexei Fedorov <alexei.fedorov@arm.com>
---
DynamicTablesPkg/Library/Acpi/Arm/AcpiDbg2LibArm/Dbg2Generator.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiDbg2LibArm/Dbg2Generator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiDbg2LibArm/Dbg2Generator.c
index 697cfc46abaedf34d30abf26e7ebb2b4d271822a..90380f48da017b257476ee63bcc1beae5efe1d65 100644
--- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiDbg2LibArm/Dbg2Generator.c
+++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiDbg2LibArm/Dbg2Generator.c
@@ -97,14 +97,12 @@ typedef struct {
/** A helper macro used for initializing the debug port device
information structure.
- @param [in] NumReg The number of generic address registers.
@param [in] SubType The DBG Port SubType.
@param [in] UartBase The UART port base address.
@param [in] UartAddrLen The UART port address range length.
@param [in] UartNameStr The UART port name string.
**/
#define DBG2_DEBUG_PORT_DDI( \
- NumReg, \
SubType, \
UartBase, \
UartAddrLen, \
@@ -116,7 +114,7 @@ typedef struct {
/* UINT16 Length */ \
sizeof (DBG2_DEBUG_DEVICE_INFORMATION), \
/* UINT8 NumberofGenericAddressRegisters */ \
- NumReg, \
+ DBG2_NUMBER_OF_GENERIC_ADDRESS_REGISTERS, \
/* UINT16 NameSpaceStringLength */ \
DBG2_NAMESPACESTRING_FIELD_SIZE, \
/* UINT16 NameSpaceStringOffset */ \
@@ -164,7 +162,6 @@ DBG2_TABLE AcpiDbg2 = {
* Debug port 1
*/
DBG2_DEBUG_PORT_DDI (
- DBG2_NUMBER_OF_GENERIC_ADDRESS_REGISTERS,
0, // {Template}: Serial Port Subtype
0, // {Template}: Serial Port Base Address
PL011_UART_LENGTH,
--
'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 5/6] DynamicTablesPkg: Remove GIC Distributor Id field
2019-03-19 13:47 [PATCH v2 0/6] DynamicTablesPkg: Framework updates and fixes Sami Mujawar
` (3 preceding siblings ...)
2019-03-19 13:47 ` [PATCH v2 4/6] DynamicTablesPkg: DGB2: Update DBG2_DEBUG_PORT_DDI Sami Mujawar
@ 2019-03-19 13:47 ` Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 6/6] DynamicTablesPkg: Minor updates and fix typos Sami Mujawar
5 siblings, 0 replies; 7+ messages in thread
From: Sami Mujawar @ 2019-03-19 13:47 UTC (permalink / raw)
To: edk2-devel
Cc: alexei.fedorov, lersek, leif.lindholm, Matteo.Carlini,
Stephanie.Hughes-Fitt, nd
This patch was originally merged in edk2 master at
d3a15f435f9716aa2f2ea5e9b35fcda04f267ab4. However, this was
later reverted at 82c4426a176c271d24915b403b267a431bdc52f5
as it was merged during the Soft Feature Freeze for
edk2-stable201903.
Resubmitting this patch as the edk2 merge window is now open.
According to ACPI 6.2 Specification - Errata A, 'One,
and only one, GIC distributor structure must be present
in the MADT for an ARM based system'. Therefore,
the GIC Distributor ID field in the ACPI MADT GICD
substructure can be set to zero and there is no need
for the Configuration Manager to provide this information.
Update the CM_ARM_GICD_INFO structure to remove the GicId
field. Similarly update the MADT Generator to set the GicId
field in the GICD substructure to zero.
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Alexei Fedorov <alexei.fedorov@arm.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
Reviewed-by: Alexei Fedorov <alexei.fedorov@arm.com>
---
DynamicTablesPkg/Include/ArmNameSpaceObjects.h | 5 +----
DynamicTablesPkg/Library/Acpi/Arm/AcpiMadtLibArm/MadtGenerator.c | 4 +++-
2 files changed, 4 insertions(+), 5 deletions(-)
diff --git a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
index 2adaa788083e4e15d049f5f6b6312f77f3c02488..73139eb3273e89205ef9e6bee67b1b842f7f516b 100644
--- a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
+++ b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
@@ -1,6 +1,6 @@
/** @file
- Copyright (c) 2017 - 2018, ARM Limited. All rights reserved.
+ Copyright (c) 2017 - 2019, 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
@@ -166,9 +166,6 @@ typedef struct CmArmGicCInfo {
GIC Distributor information for the Platform.
*/
typedef struct CmArmGicDInfo {
- /// The GIC Distributor ID.
- UINT32 GicId;
-
/// The Physical Base address for the GIC Distributor.
UINT64 PhysicalBaseAddress;
diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiMadtLibArm/MadtGenerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiMadtLibArm/MadtGenerator.c
index 1ee0b9e006bfa00ea5bbf6aa64209dac244c90a0..6b89c3f65d36ff35fcfc81cdffdeae8e4306c976 100644
--- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiMadtLibArm/MadtGenerator.c
+++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiMadtLibArm/MadtGenerator.c
@@ -192,7 +192,9 @@ AddGICD (
// UINT16 Reserved
Gicd->Reserved1 = EFI_ACPI_RESERVED_WORD;
// UINT32 Identifier
- Gicd->GicId = GicDInfo->GicId;
+ // One, and only one, GIC distributor structure must be present
+ // in the MADT for an ARM based system
+ Gicd->GicId = 0;
// UINT64 PhysicalBaseAddress
Gicd->PhysicalBaseAddress = GicDInfo->PhysicalBaseAddress;
// UINT32 VectorBase
--
'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 6/6] DynamicTablesPkg: Minor updates and fix typos
2019-03-19 13:47 [PATCH v2 0/6] DynamicTablesPkg: Framework updates and fixes Sami Mujawar
` (4 preceding siblings ...)
2019-03-19 13:47 ` [PATCH v2 5/6] DynamicTablesPkg: Remove GIC Distributor Id field Sami Mujawar
@ 2019-03-19 13:47 ` Sami Mujawar
5 siblings, 0 replies; 7+ messages in thread
From: Sami Mujawar @ 2019-03-19 13:47 UTC (permalink / raw)
To: edk2-devel
Cc: alexei.fedorov, lersek, leif.lindholm, Matteo.Carlini,
Stephanie.Hughes-Fitt, nd
This patch was originally merged in edk2 master at
07f4e26eb6fe5203028ecfe9bad90d3b67dc72c8. However, this was
later reverted at 4c20a7913333fdbd3b4c83dba060fefa84027313
as it was merged during the Soft Feature Freeze for
edk2-stable201903.
Resubmitting this patch as the edk2 merge window is now open.
Minor updates to comments and typo fixes. Also removed
unused structure CM_ARM_CPU_INFO_LIST.
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Alexei Fedorov <alexei.fedorov@arm.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
Reviewed-by: Alexei Fedorov <alexei.fedorov@arm.com>
---
DynamicTablesPkg/Include/ArmNameSpaceObjects.h | 66 ++++++++++++++++----
1 file changed, 55 insertions(+), 11 deletions(-)
diff --git a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
index 73139eb3273e89205ef9e6bee67b1b842f7f516b..ec31c40449d0658f98a89ce0bb6f604b491f1f34 100644
--- a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
+++ b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
@@ -59,6 +59,8 @@ typedef enum ArmObjectID {
/** A structure that describes the
ARM Boot Architecture flags.
+
+ ID: EArmObjBootArchInfo
*/
typedef struct CmArmBootArchInfo {
/** This is the ARM_BOOT_ARCH flags field of the FADT Table
@@ -71,13 +73,10 @@ typedef struct CmArmCpuInfo {
// Reserved for use when SMBIOS tables are implemented
} CM_ARM_CPU_INFO;
-typedef struct CmArmCpuInfoList {
- UINT32 CpuCount;
- CM_ARM_CPU_INFO * CpuInfo;
-} CM_ARM_CPU_INFO_LIST;
-
/** A structure that describes the
Power Management Profile Information for the Platform.
+
+ ID: EArmObjPowerManagementProfileInfo
*/
typedef struct CmArmPowerManagementProfileInfo {
/** This is the Preferred_PM_Profile field of the FADT Table
@@ -88,6 +87,8 @@ typedef struct CmArmPowerManagementProfileInfo {
/** A structure that describes the
GIC CPU Interface for the Platform.
+
+ ID: EArmObjGicCInfo
*/
typedef struct CmArmGicCInfo {
/// The GIC CPU Interface number.
@@ -164,6 +165,8 @@ typedef struct CmArmGicCInfo {
/** A structure that describes the
GIC Distributor information for the Platform.
+
+ ID: EArmObjGicDInfo
*/
typedef struct CmArmGicDInfo {
/// The Physical Base address for the GIC Distributor.
@@ -184,6 +187,8 @@ typedef struct CmArmGicDInfo {
/** A structure that describes the
GIC MSI Frame information for the Platform.
+
+ ID: EArmObjGicMsiFrameInfo
*/
typedef struct CmArmGicMsiFrameInfo {
/// The GIC MSI Frame ID
@@ -207,6 +212,8 @@ typedef struct CmArmGicMsiFrameInfo {
/** A structure that describes the
GIC Redistributor information for the Platform.
+
+ ID: EArmObjGicRedistributorInfo
*/
typedef struct CmArmGicRedistInfo {
/** The physical address of a page range
@@ -220,6 +227,8 @@ typedef struct CmArmGicRedistInfo {
/** A structure that describes the
GIC Interrupt Translation Service information for the Platform.
+
+ ID: EArmObjGicItsInfo
*/
typedef struct CmArmGicItsInfo {
/// The GIC ITS ID
@@ -231,6 +240,9 @@ typedef struct CmArmGicItsInfo {
/** A structure that describes the
Serial Port information for the Platform.
+
+ ID: EArmObjSerialConsolePortInfo or
+ EArmObjSerialDebugPortInfo
*/
typedef struct CmArmSerialPortInfo {
/// The physical base address for the serial port
@@ -251,6 +263,8 @@ typedef struct CmArmSerialPortInfo {
/** A structure that describes the
Generic Timer information for the Platform.
+
+ ID: EArmObjGenericTimerInfo
*/
typedef struct CmArmGenericTimerInfo {
/// The physical base address for the counter control frame
@@ -286,6 +300,8 @@ typedef struct CmArmGenericTimerInfo {
/** A structure that describes the
Platform Generic Block Timer Frame information for the Platform.
+
+ ID: EArmObjGTBlockTimerFrameInfo
*/
typedef struct CmArmGTBlockTimerFrameInfo {
/// The Generic Timer frame number
@@ -321,6 +337,8 @@ typedef struct CmArmGTBlockTimerFrameInfo {
/** A structure that describes the
Platform Generic Block Timer information for the Platform.
+
+ ID: EArmObjPlatformGTBlockInfo
*/
typedef struct CmArmGTBlockInfo {
/// The physical base address for the GT Block Timer structure
@@ -335,6 +353,8 @@ typedef struct CmArmGTBlockInfo {
/** A structure that describes the
SBSA Generic Watchdog information for the Platform.
+
+ ID: EArmObjPlatformGenericWatchdogInfo
*/
typedef struct CmArmGenericWatchdogInfo {
/// The physical base address of the SBSA Watchdog control frame
@@ -354,6 +374,8 @@ typedef struct CmArmGenericWatchdogInfo {
/** A structure that describes the
PCI Configuration Space information for the Platform.
+
+ ID: EArmObjPciConfigSpaceInfo
*/
typedef struct CmArmPciConfigSpaceInfo {
/// The physical base address for the PCI segment
@@ -371,6 +393,8 @@ typedef struct CmArmPciConfigSpaceInfo {
/** A structure that describes the
Hypervisor Vendor ID information for the Platform.
+
+ ID: EArmObjHypervisorVendorIdentity
*/
typedef struct CmArmHypervisorVendorId {
/// The hypervisor Vendor ID
@@ -379,6 +403,8 @@ typedef struct CmArmHypervisorVendorId {
/** A structure that describes the
Fixed feature flags for the Platform.
+
+ ID: EArmObjFixedFeatureFlags
*/
typedef struct CmArmFixedFeatureFlags {
/// The Fixed feature flags
@@ -387,9 +413,11 @@ typedef struct CmArmFixedFeatureFlags {
/** A structure that describes the
ITS Group node for the Platform.
+
+ ID: EArmObjItsGroup
*/
typedef struct CmArmItsGroupNode {
- /// An unique token used to ideintify this object
+ /// An unique token used to identify this object
CM_OBJECT_TOKEN Token;
/// The number of ITS identifiers in the ITS node
UINT32 ItsIdCount;
@@ -399,6 +427,8 @@ typedef struct CmArmItsGroupNode {
/** A structure that describes the
GIC ITS Identifiers for an ITS Group node.
+
+ ID: EArmObjGicItsIdentifierArray
*/
typedef struct CmArmGicItsIdentifier {
/// The ITS Identifier
@@ -407,9 +437,11 @@ typedef struct CmArmGicItsIdentifier {
/** A structure that describes the
Named component node for the Platform.
+
+ ID: EArmObjNamedComponent
*/
typedef struct CmArmNamedComponentNode {
- /// An unique token used to ideintify this object
+ /// An unique token used to identify this object
CM_OBJECT_TOKEN Token;
/// Number of ID mappings
UINT32 IdMappingCount;
@@ -436,9 +468,11 @@ typedef struct CmArmNamedComponentNode {
/** A structure that describes the
Root complex node for the Platform.
+
+ ID: EArmObjRootComplex
*/
typedef struct CmArmRootComplexNode {
- /// An unique token used to ideintify this object
+ /// An unique token used to identify this object
CM_OBJECT_TOKEN Token;
/// Number of ID mappings
UINT32 IdMappingCount;
@@ -462,9 +496,11 @@ typedef struct CmArmRootComplexNode {
/** A structure that describes the
SMMUv1 or SMMUv2 node for the Platform.
+
+ ID: EArmObjSmmuV1SmmuV2
*/
typedef struct CmArmSmmuV1SmmuV2Node {
- /// An unique token used to ideintify this object
+ /// An unique token used to identify this object
CM_OBJECT_TOKEN Token;
/// Number of ID mappings
UINT32 IdMappingCount;
@@ -502,9 +538,11 @@ typedef struct CmArmSmmuV1SmmuV2Node {
/** A structure that describes the
SMMUv3 node for the Platform.
+
+ ID: EArmObjSmmuV3
*/
typedef struct CmArmSmmuV3Node {
- /// An unique token used to ideintify this object
+ /// An unique token used to identify this object
CM_OBJECT_TOKEN Token;
/// Number of ID mappings
UINT32 IdMappingCount;
@@ -536,9 +574,11 @@ typedef struct CmArmSmmuV3Node {
/** A structure that describes the
PMCG node for the Platform.
+
+ ID: EArmObjPmcg
*/
typedef struct CmArmPmcgNode {
- /// An unique token used to ideintify this object
+ /// An unique token used to identify this object
CM_OBJECT_TOKEN Token;
/// Number of ID mappings
UINT32 IdMappingCount;
@@ -558,6 +598,8 @@ typedef struct CmArmPmcgNode {
/** A structure that describes the
ID Mappings for the Platform.
+
+ ID: EArmObjIdMappingArray
*/
typedef struct CmArmIdMapping {
/// Input base
@@ -574,6 +616,8 @@ typedef struct CmArmIdMapping {
/** A structure that describes the
SMMU interrupts for the Platform.
+
+ ID: EArmObjSmmuInterruptArray
*/
typedef struct CmArmSmmuInterrupt {
/// Interrupt number
--
'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2019-03-19 13:48 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-03-19 13:47 [PATCH v2 0/6] DynamicTablesPkg: Framework updates and fixes Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 1/6] DynamicTablesPkg: Fix protocol section Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 2/6] DynamicTablesPkg: Rename enum used for ID Mapping Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 3/6] DynamicTablesPkg: Add OEM Info Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 4/6] DynamicTablesPkg: DGB2: Update DBG2_DEBUG_PORT_DDI Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 5/6] DynamicTablesPkg: Remove GIC Distributor Id field Sami Mujawar
2019-03-19 13:47 ` [PATCH v2 6/6] DynamicTablesPkg: Minor updates and fix typos Sami Mujawar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox