summaryrefslogtreecommitdiffstats
path: root/DynamicTablesPkg/Include
diff options
context:
space:
mode:
authorSami Mujawar <sami.mujawar@arm.com>2024-03-08 11:24:00 +0000
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2024-07-29 13:44:55 +0000
commit93bb65dcfc2e5a37d9a2950d40a55bfa22d60d66 (patch)
tree6b9b31b832ad5783d49870aa758c03f198b5e79b /DynamicTablesPkg/Include
parent4f29b082e802e05f4dbe50734c7f2a3780d58707 (diff)
downloadedk2-93bb65dcfc2e5a37d9a2950d40a55bfa22d60d66.tar.gz
edk2-93bb65dcfc2e5a37d9a2950d40a55bfa22d60d66.tar.bz2
edk2-93bb65dcfc2e5a37d9a2950d40a55bfa22d60d66.zip
DynamicTablesPkg: Move Pci Config Space Info to Arm namespace
Move Pci Config Space Info object from Arm Namespace to the Arch Common namespace. Correspondingly also update the following modules to reflect the changes introduced by the move: - MCFG generator - SSDT PCIe generator - SSDT PCIe support library - ConfigurationManagerObjectParser - Dynamic Plat Repo TokenFixer map - FdtHwInfoParserLib/Pci/ArmPciConfigSpaceParser Cc: Pierre Gondois <Pierre.Gondois@arm.com> Cc: Yeo Reum Yun <YeoReum.Yun@arm.com> Cc: AbdulLateef Attar <AbdulLateef.Attar@amd.com> Cc: Jeshua Smith <jeshuas@nvidia.com> Cc: Jeff Brasen <jbrasen@nvidia.com> Cc: Girish Mahadevan <gmahadevan@nvidia.com> Cc: Leif Lindholm <quic_llindhol@quicinc.com> Cc: Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com> Signed-off-by: Sami Mujawar <sami.mujawar@arm.com> Signed-off-by: Pierre Gondois <pierre.gondois@arm.com> Reviewed-by: Sunil V L <sunilvl@ventanamicro.com>
Diffstat (limited to 'DynamicTablesPkg/Include')
-rw-r--r--DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h28
-rw-r--r--DynamicTablesPkg/Include/ArmNameSpaceObjects.h88
-rw-r--r--DynamicTablesPkg/Include/Library/SsdtPcieSupportLib.h12
3 files changed, 64 insertions, 64 deletions
diff --git a/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h b/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h
index 632816da09..7c70ba0238 100644
--- a/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h
+++ b/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h
@@ -28,6 +28,7 @@ typedef enum ArchCommonObjectID {
EArchCommonObjHypervisorVendorIdentity, ///< 5 - Hypervisor Vendor Id
EArchCommonObjFixedFeatureFlags, ///< 6 - Fixed feature flags for FADT
EArchCommonObjCmRef, ///< 7 - CM Object Reference
+ EArchCommonObjPciConfigSpaceInfo, ///< 8 - PCI Configuration Space Info
EArchCommonObjMax
} EARCH_COMMON_OBJECT_ID;
@@ -114,6 +115,33 @@ typedef struct CmArchCommonObjRef {
CM_OBJECT_TOKEN ReferenceToken;
} CM_ARCH_COMMON_OBJ_REF;
+/** A structure that describes the
+ PCI Configuration Space information for the Platform.
+
+ ID: EArchCommonObjPciConfigSpaceInfo
+*/
+typedef struct CmArchCommonPciConfigSpaceInfo {
+ /// The physical base address for the PCI segment
+ UINT64 BaseAddress;
+
+ /// The PCI segment group number
+ UINT16 PciSegmentGroupNumber;
+
+ /// The start bus number
+ UINT8 StartBusNumber;
+
+ /// The end bus number
+ UINT8 EndBusNumber;
+
+ /// Optional field: Reference Token for address mapping.
+ /// Token identifying a CM_ARCH_COMMON_OBJ_REF structure.
+ CM_OBJECT_TOKEN AddressMapToken;
+
+ /// Optional field: Reference Token for interrupt mapping.
+ /// Token identifying a CM_ARCH_COMMON_OBJ_REF structure.
+ CM_OBJECT_TOKEN InterruptMapToken;
+} CM_ARCH_COMMON_PCI_CONFIG_SPACE_INFO;
+
#pragma pack()
#endif // ARCH_COMMON_NAMESPACE_OBJECTS_H_
diff --git a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
index cfcb2c7d27..a701de4bcd 100644
--- a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
+++ b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
@@ -39,37 +39,36 @@ typedef enum ArmObjectID {
EArmObjPlatformGTBlockInfo, ///< 8 - Platform GT Block Info
EArmObjGTBlockTimerFrameInfo, ///< 9 - Generic Timer Block Frame Info
EArmObjPlatformGenericWatchdogInfo, ///< 10 - Platform Generic Watchdog
- EArmObjPciConfigSpaceInfo, ///< 11 - PCI Configuration Space Info
- EArmObjItsGroup, ///< 12 - ITS Group
- EArmObjNamedComponent, ///< 13 - Named Component
- EArmObjRootComplex, ///< 14 - Root Complex
- EArmObjSmmuV1SmmuV2, ///< 15 - SMMUv1 or SMMUv2
- EArmObjSmmuV3, ///< 16 - SMMUv3
- EArmObjPmcg, ///< 17 - PMCG
- EArmObjGicItsIdentifierArray, ///< 18 - GIC ITS Identifier Array
- EArmObjIdMappingArray, ///< 19 - ID Mapping Array
- EArmObjSmmuInterruptArray, ///< 20 - SMMU Interrupt Array
- EArmObjProcHierarchyInfo, ///< 21 - Processor Hierarchy Info
- EArmObjCacheInfo, ///< 22 - Cache Info
- EArmObjMemoryAffinityInfo, ///< 23 - Memory Affinity Info
- EArmObjDeviceHandleAcpi, ///< 24 - Device Handle Acpi
- EArmObjDeviceHandlePci, ///< 25 - Device Handle Pci
- EArmObjGenericInitiatorAffinityInfo, ///< 26 - Generic Initiator Affinity
- EArmObjCmn600Info, ///< 27 - CMN-600 Info
- EArmObjLpiInfo, ///< 28 - Lpi Info
- EArmObjPciAddressMapInfo, ///< 29 - Pci Address Map Info
- EArmObjPciInterruptMapInfo, ///< 30 - Pci Interrupt Map Info
- EArmObjRmr, ///< 31 - Reserved Memory Range Node
- EArmObjMemoryRangeDescriptor, ///< 32 - Memory Range Descriptor
- EArmObjCpcInfo, ///< 33 - Continuous Performance Control Info
- EArmObjPccSubspaceType0Info, ///< 34 - Pcc Subspace Type 0 Info
- EArmObjPccSubspaceType1Info, ///< 35 - Pcc Subspace Type 2 Info
- EArmObjPccSubspaceType2Info, ///< 36 - Pcc Subspace Type 2 Info
- EArmObjPccSubspaceType3Info, ///< 37 - Pcc Subspace Type 3 Info
- EArmObjPccSubspaceType4Info, ///< 38 - Pcc Subspace Type 4 Info
- EArmObjPccSubspaceType5Info, ///< 39 - Pcc Subspace Type 5 Info
- EArmObjEtInfo, ///< 40 - Embedded Trace Extension/Module Info
- EArmObjPsdInfo, ///< 41 - P-State Dependency (PSD) Info
+ EArmObjItsGroup, ///< 11 - ITS Group
+ EArmObjNamedComponent, ///< 12 - Named Component
+ EArmObjRootComplex, ///< 13 - Root Complex
+ EArmObjSmmuV1SmmuV2, ///< 14 - SMMUv1 or SMMUv2
+ EArmObjSmmuV3, ///< 15 - SMMUv3
+ EArmObjPmcg, ///< 16 - PMCG
+ EArmObjGicItsIdentifierArray, ///< 17 - GIC ITS Identifier Array
+ EArmObjIdMappingArray, ///< 18 - ID Mapping Array
+ EArmObjSmmuInterruptArray, ///< 19 - SMMU Interrupt Array
+ EArmObjProcHierarchyInfo, ///< 20 - Processor Hierarchy Info
+ EArmObjCacheInfo, ///< 21 - Cache Info
+ EArmObjMemoryAffinityInfo, ///< 22 - Memory Affinity Info
+ EArmObjDeviceHandleAcpi, ///< 23 - Device Handle Acpi
+ EArmObjDeviceHandlePci, ///< 24 - Device Handle Pci
+ EArmObjGenericInitiatorAffinityInfo, ///< 25 - Generic Initiator Affinity
+ EArmObjCmn600Info, ///< 26 - CMN-600 Info
+ EArmObjLpiInfo, ///< 27 - Lpi Info
+ EArmObjPciAddressMapInfo, ///< 28 - Pci Address Map Info
+ EArmObjPciInterruptMapInfo, ///< 29 - Pci Interrupt Map Info
+ EArmObjRmr, ///< 30 - Reserved Memory Range Node
+ EArmObjMemoryRangeDescriptor, ///< 31 - Memory Range Descriptor
+ EArmObjCpcInfo, ///< 32 - Continuous Performance Control Info
+ EArmObjPccSubspaceType0Info, ///< 33 - Pcc Subspace Type 0 Info
+ EArmObjPccSubspaceType1Info, ///< 34 - Pcc Subspace Type 2 Info
+ EArmObjPccSubspaceType2Info, ///< 35 - Pcc Subspace Type 2 Info
+ EArmObjPccSubspaceType3Info, ///< 36 - Pcc Subspace Type 3 Info
+ EArmObjPccSubspaceType4Info, ///< 37 - Pcc Subspace Type 4 Info
+ EArmObjPccSubspaceType5Info, ///< 38 - Pcc Subspace Type 5 Info
+ EArmObjEtInfo, ///< 39 - Embedded Trace Extension/Module Info
+ EArmObjPsdInfo, ///< 40 - P-State Dependency (PSD) Info
EArmObjMax
} EARM_OBJECT_ID;
@@ -409,33 +408,6 @@ typedef struct CmArmGenericWatchdogInfo {
} CM_ARM_GENERIC_WATCHDOG_INFO;
/** 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
- UINT64 BaseAddress;
-
- /// The PCI segment group number
- UINT16 PciSegmentGroupNumber;
-
- /// The start bus number
- UINT8 StartBusNumber;
-
- /// The end bus number
- UINT8 EndBusNumber;
-
- /// Optional field: Reference Token for address mapping.
- /// Token identifying a CM_ARCH_COMMON_OBJ_REF structure.
- CM_OBJECT_TOKEN AddressMapToken;
-
- /// Optional field: Reference Token for interrupt mapping.
- /// Token identifying a CM_ARCH_COMMON_OBJ_REF structure.
- CM_OBJECT_TOKEN InterruptMapToken;
-} CM_ARM_PCI_CONFIG_SPACE_INFO;
-
-/** A structure that describes the
ITS Group node for the Platform.
ID: EArmObjItsGroup
diff --git a/DynamicTablesPkg/Include/Library/SsdtPcieSupportLib.h b/DynamicTablesPkg/Include/Library/SsdtPcieSupportLib.h
index 4171dabc33..50a335e4a4 100644
--- a/DynamicTablesPkg/Include/Library/SsdtPcieSupportLib.h
+++ b/DynamicTablesPkg/Include/Library/SsdtPcieSupportLib.h
@@ -43,8 +43,8 @@ typedef struct MappingTable {
EFI_STATUS
EFIAPI
AddOscMethod (
- IN CONST CM_ARM_PCI_CONFIG_SPACE_INFO *PciInfo,
- IN OUT AML_OBJECT_NODE_HANDLE PciNode
+ IN CONST CM_ARCH_COMMON_PCI_CONFIG_SPACE_INFO *PciInfo,
+ IN OUT AML_OBJECT_NODE_HANDLE PciNode
);
/** Generate Pci slots devices.
@@ -66,10 +66,10 @@ AddOscMethod (
EFI_STATUS
EFIAPI
GeneratePciSlots (
- IN CONST CM_ARM_PCI_CONFIG_SPACE_INFO *PciInfo,
- IN CONST MAPPING_TABLE *MappingTable,
- IN UINT32 Uid,
- IN OUT AML_OBJECT_NODE_HANDLE PciNode
+ IN CONST CM_ARCH_COMMON_PCI_CONFIG_SPACE_INFO *PciInfo,
+ IN CONST MAPPING_TABLE *MappingTable,
+ IN UINT32 Uid,
+ IN OUT AML_OBJECT_NODE_HANDLE PciNode
);
#endif // SSDT_PCIE_SUPPORT_LIB_H_