From 83b01dc5ccea79ff28eb53fea971eebfb436ecb6 Mon Sep 17 00:00:00 2001 From: Sami Mujawar Date: Fri, 8 Mar 2024 11:48:29 +0000 Subject: DynamicTablesPkg: Move Pci Address Map Info to Arch Common Move Pci Address Map Info object from Arm Namespace to the Arch Common namespace. Correspondingly also update the following modules to reflect the changes introduced by the move: - SSDT PCIe generator - ConfigurationManagerObjectParser - Dynamic Plat Repo TokenFixer map - FdtHwInfoParserLib/Pci/ArmPciConfigSpaceParser. Cc: Pierre Gondois Cc: Yeo Reum Yun Cc: AbdulLateef Attar Cc: Jeshua Smith Cc: Jeff Brasen Cc: Girish Mahadevan Cc: Leif Lindholm Cc: Meenakshi Aggarwal Signed-off-by: Sami Mujawar Signed-off-by: Pierre Gondois Reviewed-by: Sunil V L --- .../Include/ArchCommonNameSpaceObjects.h | 28 ++++++++++++ DynamicTablesPkg/Include/ArmNameSpaceObjects.h | 52 +++++----------------- 2 files changed, 40 insertions(+), 40 deletions(-) (limited to 'DynamicTablesPkg/Include') diff --git a/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h b/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h index 7c70ba0238..bbc5d7dc55 100644 --- a/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h +++ b/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h @@ -29,6 +29,7 @@ typedef enum ArchCommonObjectID { EArchCommonObjFixedFeatureFlags, ///< 6 - Fixed feature flags for FADT EArchCommonObjCmRef, ///< 7 - CM Object Reference EArchCommonObjPciConfigSpaceInfo, ///< 8 - PCI Configuration Space Info + EArchCommonObjPciAddressMapInfo, ///< 9 - Pci Address Map Info EArchCommonObjMax } EARCH_COMMON_OBJECT_ID; @@ -142,6 +143,33 @@ typedef struct CmArchCommonPciConfigSpaceInfo { CM_OBJECT_TOKEN InterruptMapToken; } CM_ARCH_COMMON_PCI_CONFIG_SPACE_INFO; +/** A structure that describes a PCI Address Map. + + The memory-ranges used by the PCI bus are described by this object. + + ID: EArchCommonObjPciAddressMapInfo +*/ +typedef struct CmArchCommonPciAddressMapInfo { + /** Pci address space code + + Available values are: + - 0: Configuration Space + - 1: I/O Space + - 2: 32-bit-address Memory Space + - 3: 64-bit-address Memory Space + */ + UINT8 SpaceCode; + + /// PCI address + UINT64 PciAddress; + + /// Cpu address + UINT64 CpuAddress; + + /// Address size + UINT64 AddressSize; +} CM_ARCH_COMMON_PCI_ADDRESS_MAP_INFO; + #pragma pack() #endif // ARCH_COMMON_NAMESPACE_OBJECTS_H_ diff --git a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h index a701de4bcd..5b318bbb10 100644 --- a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h +++ b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h @@ -56,19 +56,18 @@ typedef enum ArmObjectID { 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 + EArmObjPciInterruptMapInfo, ///< 28 - Pci Interrupt Map Info + EArmObjRmr, ///< 29 - Reserved Memory Range Node + EArmObjMemoryRangeDescriptor, ///< 30 - Memory Range Descriptor + EArmObjCpcInfo, ///< 31 - Continuous Performance Control Info + EArmObjPccSubspaceType0Info, ///< 32 - Pcc Subspace Type 0 Info + EArmObjPccSubspaceType1Info, ///< 33 - Pcc Subspace Type 2 Info + EArmObjPccSubspaceType2Info, ///< 34 - Pcc Subspace Type 2 Info + EArmObjPccSubspaceType3Info, ///< 35 - Pcc Subspace Type 3 Info + EArmObjPccSubspaceType4Info, ///< 36 - Pcc Subspace Type 4 Info + EArmObjPccSubspaceType5Info, ///< 37 - Pcc Subspace Type 5 Info + EArmObjEtInfo, ///< 38 - Embedded Trace Extension/Module Info + EArmObjPsdInfo, ///< 39 - P-State Dependency (PSD) Info EArmObjMax } EARM_OBJECT_ID; @@ -901,33 +900,6 @@ typedef struct CmArmLpiInfo { CHAR8 StateName[16]; } CM_ARM_LPI_INFO; -/** A structure that describes a PCI Address Map. - - The memory-ranges used by the PCI bus are described by this object. - - ID: EArmObjPciAddressMapInfo -*/ -typedef struct CmArmPciAddressMapInfo { - /** Pci address space code - - Available values are: - - 0: Configuration Space - - 1: I/O Space - - 2: 32-bit-address Memory Space - - 3: 64-bit-address Memory Space - */ - UINT8 SpaceCode; - - /// PCI address - UINT64 PciAddress; - - /// Cpu address - UINT64 CpuAddress; - - /// Address size - UINT64 AddressSize; -} CM_ARM_PCI_ADDRESS_MAP_INFO; - /** A structure that describes a PCI Interrupt Map. The legacy PCI interrupts used by PCI devices are described by this object. -- cgit