mirror of
https://github.com/acidanthera/audk.git
synced 2025-04-08 17:05:09 +02:00
DynamicTablesPkg: Move Serial Port Info Objects to Arch Common
Move Serial port info objects like the generic serial port info, Serial console port info and Serial debug port info from Arm Namespace to the Arch Common namespace. i.e. EArmObjSerialPortInfo -> EArchCommonObjSerialPortInfo EArmObjConsolePortInfo -> EArchCommonObjConsolePortInfo EArmObjSerialDebugPortInfo -> EArchCommonObjSerialDebugPortInfo CM_ARM_SERIAL_PORT_INFO -> CM_ARCH_COMMON_SERIAL_PORT_INFO Correspondingly also update the following modules to reflect the changes introduced by the move: - DBG2 Generator - SPCR Generator - SSDT Serial Port Fixup Lib - SSDT Serial Port Generator - FdtHwInfoParserLib/ArmSerialPortParser - ConfigurationManagerObjectParser - Dynamic Plat Repo TokenFixer map. 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> Reviewed-by: Sunil V L <sunilvl@ventanamicro.com>
This commit is contained in:
parent
1775c9d51c
commit
e5d8bd476c
@ -22,6 +22,9 @@
|
||||
typedef enum ArchCommonObjectID {
|
||||
EArchCommonObjReserved, ///< 0 - Reserved
|
||||
EArchCommonObjPowerManagementProfileInfo, ///< 1 - Power Management Profile Info
|
||||
EArchCommonObjSerialPortInfo, ///< 2 - Generic Serial Port Info
|
||||
EArchCommonObjConsolePortInfo, ///< 3 - Serial Console Port Info
|
||||
EArchCommonObjSerialDebugPortInfo, ///< 4 - Serial Debug Port Info
|
||||
EArchCommonObjMax
|
||||
} EARCH_COMMON_OBJECT_ID;
|
||||
|
||||
@ -39,6 +42,38 @@ typedef struct CmArchCommonPowerManagementProfileInfo {
|
||||
UINT8 PowerManagementProfile;
|
||||
} CM_ARCH_COMMON_POWER_MANAGEMENT_PROFILE_INFO;
|
||||
|
||||
/** A structure that describes the
|
||||
Serial Port information for the Platform.
|
||||
|
||||
ID: EArchCommonObjConsolePortInfo or
|
||||
EArchCommonObjSerialDebugPortInfo or
|
||||
EArchCommonObjSerialPortInfo
|
||||
*/
|
||||
typedef struct EArchCommonSerialPortInfo {
|
||||
/// The physical base address for the serial port
|
||||
UINT64 BaseAddress;
|
||||
|
||||
/** The serial port interrupt.
|
||||
0 indicates that the serial port does not
|
||||
have an interrupt wired.
|
||||
*/
|
||||
UINT32 Interrupt;
|
||||
|
||||
/// The serial port baud rate
|
||||
UINT64 BaudRate;
|
||||
|
||||
/// The serial port clock
|
||||
UINT32 Clock;
|
||||
|
||||
/// Serial Port subtype
|
||||
UINT16 PortSubtype;
|
||||
|
||||
/// The Base address length
|
||||
UINT64 BaseAddressLength;
|
||||
|
||||
/// The access size
|
||||
UINT8 AccessSize;
|
||||
} CM_ARCH_COMMON_SERIAL_PORT_INFO;
|
||||
|
||||
#pragma pack()
|
||||
|
||||
|
@ -35,47 +35,44 @@ typedef enum ArmObjectID {
|
||||
EArmObjGicMsiFrameInfo, ///< 4 - GIC MSI Frame Info
|
||||
EArmObjGicRedistributorInfo, ///< 5 - GIC Redistributor Info
|
||||
EArmObjGicItsInfo, ///< 6 - GIC ITS Info
|
||||
EArmObjSerialConsolePortInfo, ///< 7 - Serial Console Port Info
|
||||
EArmObjSerialDebugPortInfo, ///< 8 - Serial Debug Port Info
|
||||
EArmObjGenericTimerInfo, ///< 9 - Generic Timer Info
|
||||
EArmObjPlatformGTBlockInfo, ///< 10 - Platform GT Block Info
|
||||
EArmObjGTBlockTimerFrameInfo, ///< 11 - Generic Timer Block Frame Info
|
||||
EArmObjPlatformGenericWatchdogInfo, ///< 12 - Platform Generic Watchdog
|
||||
EArmObjPciConfigSpaceInfo, ///< 13 - PCI Configuration Space Info
|
||||
EArmObjHypervisorVendorIdentity, ///< 14 - Hypervisor Vendor Id
|
||||
EArmObjFixedFeatureFlags, ///< 15 - Fixed feature flags for FADT
|
||||
EArmObjItsGroup, ///< 16 - ITS Group
|
||||
EArmObjNamedComponent, ///< 17 - Named Component
|
||||
EArmObjRootComplex, ///< 18 - Root Complex
|
||||
EArmObjSmmuV1SmmuV2, ///< 19 - SMMUv1 or SMMUv2
|
||||
EArmObjSmmuV3, ///< 20 - SMMUv3
|
||||
EArmObjPmcg, ///< 21 - PMCG
|
||||
EArmObjGicItsIdentifierArray, ///< 22 - GIC ITS Identifier Array
|
||||
EArmObjIdMappingArray, ///< 23 - ID Mapping Array
|
||||
EArmObjSmmuInterruptArray, ///< 24 - SMMU Interrupt Array
|
||||
EArmObjProcHierarchyInfo, ///< 25 - Processor Hierarchy Info
|
||||
EArmObjCacheInfo, ///< 26 - Cache Info
|
||||
EArmObjCmRef, ///< 27 - CM Object Reference
|
||||
EArmObjMemoryAffinityInfo, ///< 28 - Memory Affinity Info
|
||||
EArmObjDeviceHandleAcpi, ///< 29 - Device Handle Acpi
|
||||
EArmObjDeviceHandlePci, ///< 30 - Device Handle Pci
|
||||
EArmObjGenericInitiatorAffinityInfo, ///< 31 - Generic Initiator Affinity
|
||||
EArmObjSerialPortInfo, ///< 32 - Generic Serial Port Info
|
||||
EArmObjCmn600Info, ///< 33 - CMN-600 Info
|
||||
EArmObjLpiInfo, ///< 34 - Lpi Info
|
||||
EArmObjPciAddressMapInfo, ///< 35 - Pci Address Map Info
|
||||
EArmObjPciInterruptMapInfo, ///< 36 - Pci Interrupt Map Info
|
||||
EArmObjRmr, ///< 37 - Reserved Memory Range Node
|
||||
EArmObjMemoryRangeDescriptor, ///< 38 - Memory Range Descriptor
|
||||
EArmObjCpcInfo, ///< 39 - Continuous Performance Control Info
|
||||
EArmObjPccSubspaceType0Info, ///< 40 - Pcc Subspace Type 0 Info
|
||||
EArmObjPccSubspaceType1Info, ///< 41 - Pcc Subspace Type 2 Info
|
||||
EArmObjPccSubspaceType2Info, ///< 42 - Pcc Subspace Type 2 Info
|
||||
EArmObjPccSubspaceType3Info, ///< 43 - Pcc Subspace Type 3 Info
|
||||
EArmObjPccSubspaceType4Info, ///< 44 - Pcc Subspace Type 4 Info
|
||||
EArmObjPccSubspaceType5Info, ///< 45 - Pcc Subspace Type 5 Info
|
||||
EArmObjEtInfo, ///< 46 - Embedded Trace Extension/Module Info
|
||||
EArmObjPsdInfo, ///< 47 - P-State Dependency (PSD) Info
|
||||
EArmObjGenericTimerInfo, ///< 7 - Generic Timer Info
|
||||
EArmObjPlatformGTBlockInfo, ///< 8 - Platform GT Block Info
|
||||
EArmObjGTBlockTimerFrameInfo, ///< 9 - Generic Timer Block Frame Info
|
||||
EArmObjPlatformGenericWatchdogInfo, ///< 10 - Platform Generic Watchdog
|
||||
EArmObjPciConfigSpaceInfo, ///< 11 - PCI Configuration Space Info
|
||||
EArmObjHypervisorVendorIdentity, ///< 12 - Hypervisor Vendor Id
|
||||
EArmObjFixedFeatureFlags, ///< 13 - Fixed feature flags for FADT
|
||||
EArmObjItsGroup, ///< 14 - ITS Group
|
||||
EArmObjNamedComponent, ///< 15 - Named Component
|
||||
EArmObjRootComplex, ///< 16 - Root Complex
|
||||
EArmObjSmmuV1SmmuV2, ///< 17 - SMMUv1 or SMMUv2
|
||||
EArmObjSmmuV3, ///< 18 - SMMUv3
|
||||
EArmObjPmcg, ///< 19 - PMCG
|
||||
EArmObjGicItsIdentifierArray, ///< 20 - GIC ITS Identifier Array
|
||||
EArmObjIdMappingArray, ///< 21 - ID Mapping Array
|
||||
EArmObjSmmuInterruptArray, ///< 22 - SMMU Interrupt Array
|
||||
EArmObjProcHierarchyInfo, ///< 23 - Processor Hierarchy Info
|
||||
EArmObjCacheInfo, ///< 24 - Cache Info
|
||||
EArmObjCmRef, ///< 25 - CM Object Reference
|
||||
EArmObjMemoryAffinityInfo, ///< 26 - Memory Affinity Info
|
||||
EArmObjDeviceHandleAcpi, ///< 27 - Device Handle Acpi
|
||||
EArmObjDeviceHandlePci, ///< 28 - Device Handle Pci
|
||||
EArmObjGenericInitiatorAffinityInfo, ///< 29 - Generic Initiator Affinity
|
||||
EArmObjCmn600Info, ///< 30 - CMN-600 Info
|
||||
EArmObjLpiInfo, ///< 31 - Lpi Info
|
||||
EArmObjPciAddressMapInfo, ///< 32 - Pci Address Map Info
|
||||
EArmObjPciInterruptMapInfo, ///< 33 - Pci Interrupt Map Info
|
||||
EArmObjRmr, ///< 34 - Reserved Memory Range Node
|
||||
EArmObjMemoryRangeDescriptor, ///< 35 - Memory Range Descriptor
|
||||
EArmObjCpcInfo, ///< 36 - Continuous Performance Control Info
|
||||
EArmObjPccSubspaceType0Info, ///< 37 - Pcc Subspace Type 0 Info
|
||||
EArmObjPccSubspaceType1Info, ///< 38 - Pcc Subspace Type 2 Info
|
||||
EArmObjPccSubspaceType2Info, ///< 39 - Pcc Subspace Type 2 Info
|
||||
EArmObjPccSubspaceType3Info, ///< 40 - Pcc Subspace Type 3 Info
|
||||
EArmObjPccSubspaceType4Info, ///< 41 - Pcc Subspace Type 4 Info
|
||||
EArmObjPccSubspaceType5Info, ///< 42 - Pcc Subspace Type 5 Info
|
||||
EArmObjEtInfo, ///< 43 - Embedded Trace Extension/Module Info
|
||||
EArmObjPsdInfo, ///< 44 - P-State Dependency (PSD) Info
|
||||
EArmObjMax
|
||||
} EARM_OBJECT_ID;
|
||||
|
||||
@ -297,39 +294,6 @@ typedef struct CmArmGicItsInfo {
|
||||
UINT32 ProximityDomain;
|
||||
} CM_ARM_GIC_ITS_INFO;
|
||||
|
||||
/** A structure that describes the
|
||||
Serial Port information for the Platform.
|
||||
|
||||
ID: EArmObjSerialConsolePortInfo or
|
||||
EArmObjSerialDebugPortInfo or
|
||||
EArmObjSerialPortInfo
|
||||
*/
|
||||
typedef struct CmArmSerialPortInfo {
|
||||
/// The physical base address for the serial port
|
||||
UINT64 BaseAddress;
|
||||
|
||||
/** The serial port interrupt.
|
||||
0 indicates that the serial port does not
|
||||
have an interrupt wired.
|
||||
*/
|
||||
UINT32 Interrupt;
|
||||
|
||||
/// The serial port baud rate
|
||||
UINT64 BaudRate;
|
||||
|
||||
/// The serial port clock
|
||||
UINT32 Clock;
|
||||
|
||||
/// Serial Port subtype
|
||||
UINT16 PortSubtype;
|
||||
|
||||
/// The Base address length
|
||||
UINT64 BaseAddressLength;
|
||||
|
||||
/// The access size
|
||||
UINT8 AccessSize;
|
||||
} CM_ARM_SERIAL_PORT_INFO;
|
||||
|
||||
/** A structure that describes the
|
||||
Generic Timer information for the Platform.
|
||||
|
||||
|
@ -29,11 +29,11 @@
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
BuildSsdtSerialPortTable (
|
||||
IN CONST CM_STD_OBJ_ACPI_TABLE_INFO *AcpiTableInfo,
|
||||
IN CONST CM_ARM_SERIAL_PORT_INFO *SerialPortInfo,
|
||||
IN CONST CHAR8 *Name,
|
||||
IN CONST UINT64 Uid,
|
||||
OUT EFI_ACPI_DESCRIPTION_HEADER **Table
|
||||
IN CONST CM_STD_OBJ_ACPI_TABLE_INFO *AcpiTableInfo,
|
||||
IN CONST CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfo,
|
||||
IN CONST CHAR8 *Name,
|
||||
IN CONST UINT64 Uid,
|
||||
OUT EFI_ACPI_DESCRIPTION_HEADER **Table
|
||||
);
|
||||
|
||||
/** Free an SSDT table previously created by
|
||||
@ -52,7 +52,7 @@ FreeSsdtSerialPortTable (
|
||||
|
||||
/** Validate the Serial Port Information.
|
||||
|
||||
@param [in] SerialPortInfoTable Table of CM_ARM_SERIAL_PORT_INFO.
|
||||
@param [in] SerialPortInfoTable Table of CM_ARCH_COMMON_SERIAL_PORT_INFO.
|
||||
@param [in] SerialPortCount Count of SerialPort in the table.
|
||||
|
||||
@retval EFI_SUCCESS Success.
|
||||
@ -61,8 +61,8 @@ FreeSsdtSerialPortTable (
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
ValidateSerialPortInfo (
|
||||
IN CONST CM_ARM_SERIAL_PORT_INFO *SerialPortInfoTable,
|
||||
IN UINT32 SerialPortCount
|
||||
IN CONST CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfoTable,
|
||||
IN UINT32 SerialPortCount
|
||||
);
|
||||
|
||||
#endif // SSDT_SERIAL_PORT_LIB_H_
|
||||
|
@ -33,7 +33,7 @@
|
||||
Requirements:
|
||||
The following Configuration Manager Object(s) are required by
|
||||
this Generator:
|
||||
- EArmObjSerialDebugPortInfo
|
||||
- EArchCommonObjSerialDebugPortInfo
|
||||
*/
|
||||
|
||||
#pragma pack(1)
|
||||
@ -181,9 +181,9 @@ DBG2_TABLE AcpiDbg2 = {
|
||||
debug port information from the Configuration Manager
|
||||
*/
|
||||
GET_OBJECT_LIST (
|
||||
EObjNameSpaceArm,
|
||||
EArmObjSerialDebugPortInfo,
|
||||
CM_ARM_SERIAL_PORT_INFO
|
||||
EObjNameSpaceArchCommon,
|
||||
EArchCommonObjSerialDebugPortInfo,
|
||||
CM_ARCH_COMMON_SERIAL_PORT_INFO
|
||||
);
|
||||
|
||||
/** Initialize the PL011/SBSA UART with the parameters obtained from
|
||||
@ -198,7 +198,7 @@ GET_OBJECT_LIST (
|
||||
STATIC
|
||||
EFI_STATUS
|
||||
SetupDebugUart (
|
||||
IN CONST CM_ARM_SERIAL_PORT_INFO *CONST SerialPortInfo
|
||||
IN CONST CM_ARCH_COMMON_SERIAL_PORT_INFO *CONST SerialPortInfo
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
@ -329,10 +329,10 @@ BuildDbg2TableEx (
|
||||
OUT UINTN *CONST TableCount
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
CM_ARM_SERIAL_PORT_INFO *SerialPortInfo;
|
||||
UINT32 SerialPortCount;
|
||||
EFI_ACPI_DESCRIPTION_HEADER **TableList;
|
||||
EFI_STATUS Status;
|
||||
CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfo;
|
||||
UINT32 SerialPortCount;
|
||||
EFI_ACPI_DESCRIPTION_HEADER **TableList;
|
||||
|
||||
ASSERT (This != NULL);
|
||||
ASSERT (AcpiTableInfo != NULL);
|
||||
@ -358,7 +358,7 @@ BuildDbg2TableEx (
|
||||
|
||||
*Table = NULL;
|
||||
|
||||
Status = GetEArmObjSerialDebugPortInfo (
|
||||
Status = GetEArchCommonObjSerialDebugPortInfo (
|
||||
CfgMgrProtocol,
|
||||
CM_NULL_TOKEN,
|
||||
&SerialPortInfo,
|
||||
|
@ -33,7 +33,7 @@
|
||||
Requirements:
|
||||
The following Configuration Manager Object(s) are required by
|
||||
this Generator:
|
||||
- EArmObjSerialConsolePortInfo
|
||||
- EArchCommonObjConsolePortInfo
|
||||
|
||||
NOTE: This implementation ignores the possibility that the Serial settings may
|
||||
be modified from the UEFI Shell. A more complex handler would be needed
|
||||
@ -98,9 +98,9 @@ EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE AcpiSpcr = {
|
||||
Port Information from the Configuration Manager.
|
||||
*/
|
||||
GET_OBJECT_LIST (
|
||||
EObjNameSpaceArm,
|
||||
EArmObjSerialConsolePortInfo,
|
||||
CM_ARM_SERIAL_PORT_INFO
|
||||
EObjNameSpaceArchCommon,
|
||||
EArchCommonObjConsolePortInfo,
|
||||
CM_ARCH_COMMON_SERIAL_PORT_INFO
|
||||
)
|
||||
|
||||
/** Free any resources allocated for constructing the tables.
|
||||
@ -200,10 +200,10 @@ BuildSpcrTableEx (
|
||||
OUT UINTN *CONST TableCount
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
CM_ARM_SERIAL_PORT_INFO *SerialPortInfo;
|
||||
UINT32 SerialPortCount;
|
||||
EFI_ACPI_DESCRIPTION_HEADER **TableList;
|
||||
EFI_STATUS Status;
|
||||
CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfo;
|
||||
UINT32 SerialPortCount;
|
||||
EFI_ACPI_DESCRIPTION_HEADER **TableList;
|
||||
|
||||
ASSERT (This != NULL);
|
||||
ASSERT (AcpiTableInfo != NULL);
|
||||
@ -229,7 +229,7 @@ BuildSpcrTableEx (
|
||||
|
||||
*Table = NULL;
|
||||
|
||||
Status = GetEArmObjSerialConsolePortInfo (
|
||||
Status = GetEArchCommonObjConsolePortInfo (
|
||||
CfgMgrProtocol,
|
||||
CM_NULL_TOKEN,
|
||||
&SerialPortInfo,
|
||||
|
@ -29,16 +29,16 @@
|
||||
Requirements:
|
||||
The following Configuration Manager Object(s) are required by
|
||||
this Generator:
|
||||
- EArmObjSerialPortInfo
|
||||
- EArchCommonObjSerialPortInfo
|
||||
*/
|
||||
|
||||
/** This macro expands to a function that retrieves the Serial-port
|
||||
information from the Configuration Manager.
|
||||
*/
|
||||
GET_OBJECT_LIST (
|
||||
EObjNameSpaceArm,
|
||||
EArmObjSerialPortInfo,
|
||||
CM_ARM_SERIAL_PORT_INFO
|
||||
EObjNameSpaceArchCommon,
|
||||
EArchCommonObjSerialPortInfo,
|
||||
CM_ARCH_COMMON_SERIAL_PORT_INFO
|
||||
);
|
||||
|
||||
/** Starting value for the UID to represent the serial ports.
|
||||
@ -167,13 +167,13 @@ BuildSsdtSerialPortTableEx (
|
||||
OUT UINTN *CONST TableCount
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
CM_ARM_SERIAL_PORT_INFO *SerialPortInfo;
|
||||
UINT32 SerialPortCount;
|
||||
UINTN Index;
|
||||
CHAR8 NewName[AML_NAME_SEG_SIZE + 1];
|
||||
UINT64 Uid;
|
||||
EFI_ACPI_DESCRIPTION_HEADER **TableList;
|
||||
EFI_STATUS Status;
|
||||
CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfo;
|
||||
UINT32 SerialPortCount;
|
||||
UINTN Index;
|
||||
CHAR8 NewName[AML_NAME_SEG_SIZE + 1];
|
||||
UINT64 Uid;
|
||||
EFI_ACPI_DESCRIPTION_HEADER **TableList;
|
||||
|
||||
ASSERT (This != NULL);
|
||||
ASSERT (AcpiTableInfo != NULL);
|
||||
@ -185,7 +185,7 @@ BuildSsdtSerialPortTableEx (
|
||||
|
||||
*Table = NULL;
|
||||
|
||||
Status = GetEArmObjSerialPortInfo (
|
||||
Status = GetEArchCommonObjSerialPortInfo (
|
||||
CfgMgrProtocol,
|
||||
CM_NULL_TOKEN,
|
||||
&SerialPortInfo,
|
||||
|
@ -150,47 +150,44 @@ CM_OBJECT_TOKEN_FIXER TokenFixer[EArmObjMax] = {
|
||||
NULL, ///< 4 - GIC MSI Frame Info
|
||||
NULL, ///< 5 - GIC Redistributor Info
|
||||
NULL, ///< 6 - GIC ITS Info
|
||||
NULL, ///< 7 - Serial Console Port Info
|
||||
NULL, ///< 8 - Serial Debug Port Info
|
||||
NULL, ///< 9 - Generic Timer Info
|
||||
NULL, ///< 10 - Platform GT Block Info
|
||||
NULL, ///< 11 - Generic Timer Block Frame Info
|
||||
NULL, ///< 12 - Platform Generic Watchdog
|
||||
NULL, ///< 13 - PCI Configuration Space Info
|
||||
NULL, ///< 14 - Hypervisor Vendor Id
|
||||
NULL, ///< 15 - Fixed feature flags for FADT
|
||||
TokenFixerItsGroup, ///< 16 - ITS Group
|
||||
TokenFixerNamedComponentNode, ///< 17 - Named Component
|
||||
TokenFixerRootComplexNode, ///< 18 - Root Complex
|
||||
TokenFixerNotImplemented, ///< 19 - SMMUv1 or SMMUv2
|
||||
TokenFixerSmmuV3Node, ///< 20 - SMMUv3
|
||||
TokenFixerNotImplemented, ///< 21 - PMCG
|
||||
NULL, ///< 22 - GIC ITS Identifier Array
|
||||
NULL, ///< 23 - ID Mapping Array
|
||||
NULL, ///< 24 - SMMU Interrupt Array
|
||||
TokenFixerNotImplemented, ///< 25 - Processor Hierarchy Info
|
||||
TokenFixerNotImplemented, ///< 26 - Cache Info
|
||||
NULL, ///< 27 - CM Object Reference
|
||||
NULL, ///< 28 - Memory Affinity Info
|
||||
NULL, ///< 29 - Device Handle Acpi
|
||||
NULL, ///< 30 - Device Handle Pci
|
||||
NULL, ///< 31 - Generic Initiator Affinity
|
||||
NULL, ///< 32 - Generic Serial Port Info
|
||||
NULL, ///< 33 - CMN-600 Info
|
||||
NULL, ///< 34 - Lpi Info
|
||||
NULL, ///< 35 - Pci Address Map Info
|
||||
NULL, ///< 36 - Pci Interrupt Map Info
|
||||
NULL, ///< 37 - Reserved Memory Range Node
|
||||
NULL, ///< 38 - Memory Range Descriptor
|
||||
NULL, ///< 39 - Continuous Performance Control Info
|
||||
NULL, ///< 40 - Pcc Subspace Type 0 Info
|
||||
NULL, ///< 41 - Pcc Subspace Type 2 Info
|
||||
NULL, ///< 42 - Pcc Subspace Type 2 Info
|
||||
NULL, ///< 43 - Pcc Subspace Type 3 Info
|
||||
NULL, ///< 44 - Pcc Subspace Type 4 Info
|
||||
NULL, ///< 45 - Pcc Subspace Type 5 Info
|
||||
NULL, ///< 46 - Embedded Trace Extension/Module Info
|
||||
NULL ///< 47 - P-State Dependency (PSD) Info
|
||||
NULL, ///< 7 - Generic Timer Info
|
||||
NULL, ///< 8 - Platform GT Block Info
|
||||
NULL, ///< 9 - Generic Timer Block Frame Info
|
||||
NULL, ///< 10 - Platform Generic Watchdog
|
||||
NULL, ///< 11 - PCI Configuration Space Info
|
||||
NULL, ///< 12 - Hypervisor Vendor Id
|
||||
NULL, ///< 13 - Fixed feature flags for FADT
|
||||
TokenFixerItsGroup, ///< 14 - ITS Group
|
||||
TokenFixerNamedComponentNode, ///< 15 - Named Component
|
||||
TokenFixerRootComplexNode, ///< 16 - Root Complex
|
||||
TokenFixerNotImplemented, ///< 17 - SMMUv1 or SMMUv2
|
||||
TokenFixerSmmuV3Node, ///< 18 - SMMUv3
|
||||
TokenFixerNotImplemented, ///< 19 - PMCG
|
||||
NULL, ///< 20 - GIC ITS Identifier Array
|
||||
NULL, ///< 21 - ID Mapping Array
|
||||
NULL, ///< 22 - SMMU Interrupt Array
|
||||
TokenFixerNotImplemented, ///< 23 - Processor Hierarchy Info
|
||||
TokenFixerNotImplemented, ///< 24 - Cache Info
|
||||
NULL, ///< 25 - Memory Affinity Info
|
||||
NULL, ///< 26 - Memory Affinity Info
|
||||
NULL, ///< 27 - Device Handle Acpi
|
||||
NULL, ///< 28 - Device Handle Pci
|
||||
NULL, ///< 29 - Generic Initiator Affinity
|
||||
NULL, ///< 30 - CMN-600 Info
|
||||
NULL, ///< 31 - Lpi Info
|
||||
NULL, ///< 32 - Pci Address Map Info
|
||||
NULL, ///< 33 - Pci Interrupt Map Info
|
||||
NULL, ///< 34 - Reserved Memory Range Node
|
||||
NULL, ///< 35 - Memory Range Descriptor
|
||||
NULL, ///< 36 - Continuous Performance Control Info
|
||||
NULL, ///< 37 - Pcc Subspace Type 0 Info
|
||||
NULL, ///< 38 - Pcc Subspace Type 2 Info
|
||||
NULL, ///< 39 - Pcc Subspace Type 2 Info
|
||||
NULL, ///< 40 - Pcc Subspace Type 3 Info
|
||||
NULL, ///< 41 - Pcc Subspace Type 4 Info
|
||||
NULL, ///< 42 - Pcc Subspace Type 5 Info
|
||||
NULL, ///< 43 - Embedded Trace Extension/Module Info
|
||||
NULL ///< 44 - P-State Dependency (PSD) Info
|
||||
};
|
||||
|
||||
/** CmObj token fixer.
|
||||
|
@ -46,7 +46,7 @@ extern CHAR8 ssdtserialporttemplate_aml_code[];
|
||||
|
||||
/** Validate the Serial Port Information.
|
||||
|
||||
@param [in] SerialPortInfoTable Table of CM_ARM_SERIAL_PORT_INFO.
|
||||
@param [in] SerialPortInfoTable Table of CM_ARCH_COMMON_SERIAL_PORT_INFO.
|
||||
@param [in] SerialPortCount Count of SerialPort in the table.
|
||||
|
||||
@retval EFI_SUCCESS Success.
|
||||
@ -55,12 +55,12 @@ extern CHAR8 ssdtserialporttemplate_aml_code[];
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
ValidateSerialPortInfo (
|
||||
IN CONST CM_ARM_SERIAL_PORT_INFO *SerialPortInfoTable,
|
||||
IN UINT32 SerialPortCount
|
||||
IN CONST CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfoTable,
|
||||
IN UINT32 SerialPortCount
|
||||
)
|
||||
{
|
||||
UINT32 Index;
|
||||
CONST CM_ARM_SERIAL_PORT_INFO *SerialPortInfo;
|
||||
UINT32 Index;
|
||||
CONST CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfo;
|
||||
|
||||
if ((SerialPortInfoTable == NULL) ||
|
||||
(SerialPortCount == 0))
|
||||
@ -163,9 +163,9 @@ STATIC
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
FixupIds (
|
||||
IN AML_ROOT_NODE_HANDLE RootNodeHandle,
|
||||
IN CONST UINT64 Uid,
|
||||
IN CONST CM_ARM_SERIAL_PORT_INFO *SerialPortInfo
|
||||
IN AML_ROOT_NODE_HANDLE RootNodeHandle,
|
||||
IN CONST UINT64 Uid,
|
||||
IN CONST CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfo
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
@ -290,8 +290,8 @@ STATIC
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
FixupCrs (
|
||||
IN AML_ROOT_NODE_HANDLE RootNodeHandle,
|
||||
IN CONST CM_ARM_SERIAL_PORT_INFO *SerialPortInfo
|
||||
IN AML_ROOT_NODE_HANDLE RootNodeHandle,
|
||||
IN CONST CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfo
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
@ -366,9 +366,9 @@ STATIC
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
FixupName (
|
||||
IN AML_ROOT_NODE_HANDLE RootNodeHandle,
|
||||
IN CONST CM_ARM_SERIAL_PORT_INFO *SerialPortInfo,
|
||||
IN CONST CHAR8 *Name
|
||||
IN AML_ROOT_NODE_HANDLE RootNodeHandle,
|
||||
IN CONST CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfo,
|
||||
IN CONST CHAR8 *Name
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
@ -410,11 +410,11 @@ STATIC
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
FixupSerialPortInfo (
|
||||
IN AML_ROOT_NODE_HANDLE RootNodeHandle,
|
||||
IN CONST CM_ARM_SERIAL_PORT_INFO *SerialPortInfo,
|
||||
IN CONST CHAR8 *Name,
|
||||
IN CONST UINT64 Uid,
|
||||
OUT EFI_ACPI_DESCRIPTION_HEADER **Table
|
||||
IN AML_ROOT_NODE_HANDLE RootNodeHandle,
|
||||
IN CONST CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfo,
|
||||
IN CONST CHAR8 *Name,
|
||||
IN CONST UINT64 Uid,
|
||||
OUT EFI_ACPI_DESCRIPTION_HEADER **Table
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
@ -480,11 +480,11 @@ FreeSsdtSerialPortTable (
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
BuildSsdtSerialPortTable (
|
||||
IN CONST CM_STD_OBJ_ACPI_TABLE_INFO *AcpiTableInfo,
|
||||
IN CONST CM_ARM_SERIAL_PORT_INFO *SerialPortInfo,
|
||||
IN CONST CHAR8 *Name,
|
||||
IN CONST UINT64 Uid,
|
||||
OUT EFI_ACPI_DESCRIPTION_HEADER **Table
|
||||
IN CONST CM_STD_OBJ_ACPI_TABLE_INFO *AcpiTableInfo,
|
||||
IN CONST CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfo,
|
||||
IN CONST CHAR8 *Name,
|
||||
IN CONST UINT64 Uid,
|
||||
OUT EFI_ACPI_DESCRIPTION_HEADER **Table
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
|
@ -122,10 +122,10 @@ STATIC CONST CM_OBJ_PARSER CmArmGicItsInfoParser[] = {
|
||||
{ "ProximityDomain", 4, "0x%x", NULL }
|
||||
};
|
||||
|
||||
/** A parser for EArmObjSerialConsolePortInfo,
|
||||
EArmObjSerialDebugPortInfo and EArmObjSerialPortInfo.
|
||||
/** A parser for EArchCommonObjConsolePortInfo,
|
||||
EArchCommonObjSerialDebugPortInfo and EArchCommonObjSerialPortInfo.
|
||||
*/
|
||||
STATIC CONST CM_OBJ_PARSER CmArmSerialPortInfoParser[] = {
|
||||
STATIC CONST CM_OBJ_PARSER CmArchCommonSerialPortInfoParser[] = {
|
||||
{ "BaseAddress", 8, "0x%llx", NULL },
|
||||
{ "Interrupt", 4, "0x%x", NULL },
|
||||
{ "BaudRate", 8, "0x%llx", NULL },
|
||||
@ -672,6 +672,9 @@ STATIC CONST CM_OBJ_PARSER CmArmPsdInfoParser[] = {
|
||||
STATIC CONST CM_OBJ_PARSER_ARRAY ArchCommonNamespaceObjectParser[] = {
|
||||
CM_PARSER_ADD_OBJECT_RESERVED (EArchCommonObjReserved),
|
||||
CM_PARSER_ADD_OBJECT (EArchCommonObjPowerManagementProfileInfo,CmArchCommonPowerManagementProfileInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArchCommonObjSerialPortInfo, CmArchCommonSerialPortInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArchCommonObjConsolePortInfo, CmArchCommonSerialPortInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArchCommonObjSerialDebugPortInfo, CmArchCommonSerialPortInfoParser),
|
||||
CM_PARSER_ADD_OBJECT_RESERVED (EArchCommonObjMax)
|
||||
};
|
||||
|
||||
@ -685,8 +688,6 @@ STATIC CONST CM_OBJ_PARSER_ARRAY ArmNamespaceObjectParser[] = {
|
||||
CM_PARSER_ADD_OBJECT (EArmObjGicMsiFrameInfo, CmArmGicMsiFrameInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjGicRedistributorInfo, CmArmGicRedistInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjGicItsInfo, CmArmGicItsInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjSerialConsolePortInfo, CmArmSerialPortInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjSerialDebugPortInfo, CmArmSerialPortInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjGenericTimerInfo, CmArmGenericTimerInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjPlatformGTBlockInfo, CmArmGTBlockInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjGTBlockTimerFrameInfo, CmArmGTBlockTimerFrameInfoParser),
|
||||
@ -710,7 +711,6 @@ STATIC CONST CM_OBJ_PARSER_ARRAY ArmNamespaceObjectParser[] = {
|
||||
CM_PARSER_ADD_OBJECT (EArmObjDeviceHandleAcpi, CmArmDeviceHandleAcpiParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjDeviceHandlePci, CmArmDeviceHandlePciParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjGenericInitiatorAffinityInfo,CmArmGenericInitiatorAffinityInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjSerialPortInfo, CmArmSerialPortInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjCmn600Info, CmArmCmn600InfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjLpiInfo, CmArmLpiInfoParser),
|
||||
CM_PARSER_ADD_OBJECT (EArmObjPciAddressMapInfo, CmArmPciAddressMapInfoParser),
|
||||
|
@ -71,7 +71,7 @@ CONST COMPATIBILITY_INFO SerialSbsaCompatibleInfo = {
|
||||
|
||||
@param [in] Fdt Pointer to a Flattened Device Tree (Fdt).
|
||||
@param [in] SerialPortNode Offset of a serial-port node.
|
||||
@param [in] SerialPortInfo The CM_ARM_SERIAL_PORT_INFO to populate.
|
||||
@param [in] SerialPortInfo The CM_ARCH_COMMON_SERIAL_PORT_INFO to populate.
|
||||
|
||||
@retval EFI_SUCCESS The function completed successfully.
|
||||
@retval EFI_ABORTED An error occurred.
|
||||
@ -82,9 +82,9 @@ STATIC
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
SerialPortNodeParser (
|
||||
IN CONST VOID *Fdt,
|
||||
IN INT32 SerialPortNode,
|
||||
IN CM_ARM_SERIAL_PORT_INFO *SerialPortInfo
|
||||
IN CONST VOID *Fdt,
|
||||
IN INT32 SerialPortNode,
|
||||
IN CM_ARCH_COMMON_SERIAL_PORT_INFO *SerialPortInfo
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
@ -313,7 +313,7 @@ GetSerialConsoleNode (
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
|
||||
/** CM_ARM_SERIAL_PORT_INFO dispatcher function (for a generic serial-port).
|
||||
/** CM_ARCH_COMMON_SERIAL_PORT_INFO dispatcher function (for a generic serial-port).
|
||||
|
||||
@param [in] FdtParserHandle A handle to the parser instance.
|
||||
@param [in] GenericSerialInfo Pointer to a serial port info list.
|
||||
@ -331,9 +331,9 @@ EFI_STATUS
|
||||
EFIAPI
|
||||
ArmSerialPortInfoDispatch (
|
||||
IN CONST FDT_HW_INFO_PARSER_HANDLE FdtParserHandle,
|
||||
IN CM_ARM_SERIAL_PORT_INFO *GenericSerialInfo,
|
||||
IN CM_ARCH_COMMON_SERIAL_PORT_INFO *GenericSerialInfo,
|
||||
IN INT32 NodeCount,
|
||||
IN EARM_OBJECT_ID SerialObjectId
|
||||
IN EARCH_COMMON_OBJECT_ID SerialObjectId
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
@ -344,9 +344,9 @@ ArmSerialPortInfoDispatch (
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
|
||||
if ((SerialObjectId != EArmObjSerialPortInfo) &&
|
||||
(SerialObjectId != EArmObjSerialDebugPortInfo) &&
|
||||
(SerialObjectId != EArmObjSerialConsolePortInfo))
|
||||
if ((SerialObjectId != EArchCommonObjSerialPortInfo) &&
|
||||
(SerialObjectId != EArchCommonObjSerialDebugPortInfo) &&
|
||||
(SerialObjectId != EArchCommonObjConsolePortInfo))
|
||||
{
|
||||
ASSERT (0);
|
||||
return EFI_INVALID_PARAMETER;
|
||||
@ -354,10 +354,10 @@ ArmSerialPortInfoDispatch (
|
||||
|
||||
// Dispatch the Generic Serial ports
|
||||
Status = CreateCmObjDesc (
|
||||
CREATE_CM_ARM_OBJECT_ID (SerialObjectId),
|
||||
CREATE_CM_ARCH_COMMON_OBJECT_ID (SerialObjectId),
|
||||
NodeCount,
|
||||
GenericSerialInfo,
|
||||
sizeof (CM_ARM_SERIAL_PORT_INFO) * NodeCount,
|
||||
sizeof (CM_ARCH_COMMON_SERIAL_PORT_INFO) * NodeCount,
|
||||
&NewCmObjDesc
|
||||
);
|
||||
if (EFI_ERROR (Status)) {
|
||||
@ -372,19 +372,19 @@ ArmSerialPortInfoDispatch (
|
||||
return Status;
|
||||
}
|
||||
|
||||
/** CM_ARM_SERIAL_PORT_INFO parser function (for debug/console serial-port).
|
||||
/** CM_ARCH_COMMON_SERIAL_PORT_INFO parser function (for debug/console serial-port).
|
||||
|
||||
This parser expects FdtBranch to be the debug serial-port node.
|
||||
At most one CmObj is created.
|
||||
The following structure is populated:
|
||||
typedef struct CmArmSerialPortInfo {
|
||||
typedef struct EArchCommonSerialPortInfo {
|
||||
UINT64 BaseAddress; // {Populated}
|
||||
UINT32 Interrupt; // {Populated}
|
||||
UINT64 BaudRate; // {default}
|
||||
UINT32 Clock; // {Populated}
|
||||
UINT16 PortSubtype; // {Populated}
|
||||
UINT64 BaseAddressLength // {Populated}
|
||||
} CM_ARM_SERIAL_PORT_INFO;
|
||||
} CM_ARCH_COMMON_SERIAL_PORT_INFO;
|
||||
|
||||
A parser parses a Device Tree to populate a specific CmObj type. None,
|
||||
one or many CmObj can be created by the parser.
|
||||
@ -396,7 +396,8 @@ ArmSerialPortInfoDispatch (
|
||||
@param [in] FdtParserHandle A handle to the parser instance.
|
||||
@param [in] FdtBranch When searching for DT node name, restrict
|
||||
the search to this Device Tree branch.
|
||||
@param [in] SerialObjectId ArmNamespace Object ID for the serial port.
|
||||
@param [in] SerialObjectId ArchCommon Namespace Object ID for the serial
|
||||
port.
|
||||
|
||||
@retval EFI_SUCCESS The function completed successfully.
|
||||
@retval EFI_ABORTED An error occurred.
|
||||
@ -410,14 +411,14 @@ EFIAPI
|
||||
ArmSerialPortInfoParser (
|
||||
IN CONST FDT_HW_INFO_PARSER_HANDLE FdtParserHandle,
|
||||
IN INT32 FdtBranch,
|
||||
IN EARM_OBJECT_ID SerialObjectId
|
||||
IN EARCH_COMMON_OBJECT_ID SerialObjectId
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
CM_ARM_SERIAL_PORT_INFO SerialInfo;
|
||||
EFI_STATUS Status;
|
||||
CM_ARCH_COMMON_SERIAL_PORT_INFO SerialInfo;
|
||||
|
||||
if ((SerialObjectId != EArmObjSerialDebugPortInfo) &&
|
||||
(SerialObjectId != EArmObjSerialConsolePortInfo))
|
||||
if ((SerialObjectId != EArchCommonObjSerialDebugPortInfo) &&
|
||||
(SerialObjectId != EArchCommonObjConsolePortInfo))
|
||||
{
|
||||
ASSERT (0);
|
||||
return EFI_INVALID_PARAMETER;
|
||||
@ -447,11 +448,11 @@ ArmSerialPortInfoParser (
|
||||
|
||||
/** SerialPort dispatcher.
|
||||
|
||||
This disptacher populates the CM_ARM_SERIAL_PORT_INFO structure for
|
||||
This disptacher populates the CM_ARCH_COMMON_SERIAL_PORT_INFO structure for
|
||||
the following CM_OBJ_ID:
|
||||
- EArmObjSerialConsolePortInfo
|
||||
- EArmObjSerialDebugPortInfo
|
||||
- EArmObjSerialPortInfo
|
||||
- EArchCommonObjConsolePortInfo
|
||||
- EArchCommonObjSerialDebugPortInfo
|
||||
- EArchCommonObjSerialPortInfo
|
||||
|
||||
A parser parses a Device Tree to populate a specific CmObj type. None,
|
||||
one or many CmObj can be created by the parser.
|
||||
@ -477,16 +478,16 @@ SerialPortDispatcher (
|
||||
IN INT32 FdtBranch
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
INT32 SerialConsoleNode;
|
||||
INT32 SerialDebugNode;
|
||||
INT32 SerialNode;
|
||||
UINT32 Index;
|
||||
UINT32 SerialNodeCount;
|
||||
UINT32 SerialNodesRemaining;
|
||||
CM_ARM_SERIAL_PORT_INFO *GenericSerialInfo;
|
||||
UINT32 GenericSerialIndex;
|
||||
VOID *Fdt;
|
||||
EFI_STATUS Status;
|
||||
INT32 SerialConsoleNode;
|
||||
INT32 SerialDebugNode;
|
||||
INT32 SerialNode;
|
||||
UINT32 Index;
|
||||
UINT32 SerialNodeCount;
|
||||
UINT32 SerialNodesRemaining;
|
||||
CM_ARCH_COMMON_SERIAL_PORT_INFO *GenericSerialInfo;
|
||||
UINT32 GenericSerialIndex;
|
||||
VOID *Fdt;
|
||||
|
||||
if (FdtParserHandle == NULL) {
|
||||
ASSERT (0);
|
||||
@ -531,7 +532,7 @@ SerialPortDispatcher (
|
||||
Status = ArmSerialPortInfoParser (
|
||||
FdtParserHandle,
|
||||
SerialConsoleNode,
|
||||
EArmObjSerialConsolePortInfo
|
||||
EArchCommonObjConsolePortInfo
|
||||
);
|
||||
if (EFI_ERROR (Status)) {
|
||||
ASSERT (0);
|
||||
@ -550,7 +551,7 @@ SerialPortDispatcher (
|
||||
SerialNodesRemaining--;
|
||||
GenericSerialInfo = AllocateZeroPool (
|
||||
SerialNodesRemaining *
|
||||
sizeof (CM_ARM_SERIAL_PORT_INFO)
|
||||
sizeof (CM_ARCH_COMMON_SERIAL_PORT_INFO)
|
||||
);
|
||||
if (GenericSerialInfo == NULL) {
|
||||
ASSERT (0);
|
||||
@ -589,7 +590,7 @@ SerialPortDispatcher (
|
||||
Status = ArmSerialPortInfoParser (
|
||||
FdtParserHandle,
|
||||
SerialDebugNode,
|
||||
EArmObjSerialDebugPortInfo
|
||||
EArchCommonObjSerialDebugPortInfo
|
||||
);
|
||||
if (EFI_ERROR (Status)) {
|
||||
ASSERT (0);
|
||||
@ -620,7 +621,7 @@ SerialPortDispatcher (
|
||||
FdtParserHandle,
|
||||
GenericSerialInfo,
|
||||
GenericSerialIndex,
|
||||
EArmObjSerialPortInfo
|
||||
EArchCommonObjSerialPortInfo
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -14,11 +14,11 @@
|
||||
|
||||
/** SerialPort dispatcher.
|
||||
|
||||
This disptacher populates the CM_ARM_SERIAL_PORT_INFO structure for
|
||||
This disptacher populates the CM_ARCH_COMMON_SERIAL_PORT_INFO structure for
|
||||
the following CM_OBJ_ID:
|
||||
- EArmObjSerialConsolePortInfo
|
||||
- EArmObjSerialDebugPortInfo
|
||||
- EArmObjSerialPortInfo
|
||||
- EArchCommonObjConsolePortInfo
|
||||
- EArchCommonObjSerialDebugPortInfo
|
||||
- EArchCommonObjSerialPortInfo
|
||||
|
||||
A parser parses a Device Tree to populate a specific CmObj type. None,
|
||||
one or many CmObj can be created by the parser.
|
||||
|
@ -447,47 +447,44 @@ The CM_OBJECT_ID type is used to identify the Configuration Manager
|
||||
| 4 | GIC MSI Frame Info | |
|
||||
| 5 | GIC Redistributor Info | |
|
||||
| 6 | GIC ITS Info | |
|
||||
| 7 | Serial Console Port Info | Move to Arch Common NS |
|
||||
| 8 | Serial Debug Port Info | Move to Arch Common NS |
|
||||
| 9 | Generic Timer Info | |
|
||||
| 10 | Platform GT Block Info | |
|
||||
| 11 | Generic Timer Block Frame Info | |
|
||||
| 12 | Platform Generic Watchdog | |
|
||||
| 13 | PCI Configuration Space Info | Move to Arch Common NS |
|
||||
| 14 | Hypervisor Vendor Id | Move to Arch Common NS |
|
||||
| 15 | Fixed feature flags for FADT | Move to Arch Common NS |
|
||||
| 16 | ITS Group | |
|
||||
| 17 | Named Component | |
|
||||
| 18 | Root Complex | |
|
||||
| 19 | SMMUv1 or SMMUv2 | |
|
||||
| 20 | SMMUv3 | |
|
||||
| 21 | PMCG | |
|
||||
| 22 | GIC ITS Identifier Array | |
|
||||
| 23 | ID Mapping Array | |
|
||||
| 24 | SMMU Interrupt Array | |
|
||||
| 25 | Processor Hierarchy Info | Move to Arch Common NS |
|
||||
| 26 | Cache Info | Move to Arch Common NS |
|
||||
| 27 | CM Object Reference | Move to Arch Common NS |
|
||||
| 28 | Memory Affinity Info | Move to Arch Common NS |
|
||||
| 29 | Device Handle Acpi | Move to Arch Common NS |
|
||||
| 30 | Device Handle PCI | Move to Arch Common NS |
|
||||
| 31 | Generic Initiator Affinity Info | Move to Arch Common NS |
|
||||
| 32 | Serial Port Info | Move to Arch Common NS |
|
||||
| 33 | CMN 600 Info | |
|
||||
| 34 | Low Power Idle State Info | Move to Arch Common NS |
|
||||
| 35 | PCI Address Map Info | Move to Arch Common NS |
|
||||
| 36 | PCI Interrupt Map Info | Move to Arch Common NS |
|
||||
| 37 | Reserved Memory Range Node | |
|
||||
| 38 | Memory Range Descriptor | |
|
||||
| 39 | Continuous Performance Control Info | Move to Arch Common NS |
|
||||
| 40 | Pcc Subspace Type 0 Info | Move to Arch Common NS |
|
||||
| 41 | Pcc Subspace Type 1 Info | Move to Arch Common NS |
|
||||
| 42 | Pcc Subspace Type 2 Info | Move to Arch Common NS |
|
||||
| 43 | Pcc Subspace Type 3 Info | Move to Arch Common NS |
|
||||
| 44 | Pcc Subspace Type 4 Info | Move to Arch Common NS |
|
||||
| 45 | Pcc Subspace Type 5 Info | Move to Arch Common NS |
|
||||
| 46 | Embedded Trace Extension/Module Info | |
|
||||
| 47 | P-State Dependency (PSD) Info | Move to Arch Common NS |
|
||||
| 7 | Generic Timer Info | |
|
||||
| 8 | Platform GT Block Info | |
|
||||
| 9 | Generic Timer Block Frame Info | |
|
||||
| 10 | Platform Generic Watchdog | |
|
||||
| 11 | PCI Configuration Space Info | Move to Arch Common NS |
|
||||
| 12 | Hypervisor Vendor Id | Move to Arch Common NS |
|
||||
| 13 | Fixed feature flags for FADT | Move to Arch Common NS |
|
||||
| 14 | ITS Group | |
|
||||
| 15 | Named Component | |
|
||||
| 16 | Root Complex | |
|
||||
| 17 | SMMUv1 or SMMUv2 | |
|
||||
| 18 | SMMUv3 | |
|
||||
| 19 | PMCG | |
|
||||
| 20 | GIC ITS Identifier Array | |
|
||||
| 21 | ID Mapping Array | |
|
||||
| 22 | SMMU Interrupt Array | |
|
||||
| 23 | Processor Hierarchy Info | Move to Arch Common NS |
|
||||
| 24 | Cache Info | Move to Arch Common NS |
|
||||
| 25 | CM Object Reference | Move to Arch Common NS |
|
||||
| 26 | Memory Affinity Info | Move to Arch Common NS |
|
||||
| 27 | Device Handle Acpi | Move to Arch Common NS |
|
||||
| 28 | Device Handle PCI | Move to Arch Common NS |
|
||||
| 29 | Generic Initiator Affinity Info | Move to Arch Common NS |
|
||||
| 30 | CMN 600 Info | |
|
||||
| 31 | Low Power Idle State Info | Move to Arch Common NS |
|
||||
| 32 | PCI Address Map Info | Move to Arch Common NS |
|
||||
| 33 | PCI Interrupt Map Info | Move to Arch Common NS |
|
||||
| 34 | Reserved Memory Range Node | |
|
||||
| 35 | Memory Range Descriptor | |
|
||||
| 36 | Continuous Performance Control Info | Move to Arch Common NS |
|
||||
| 37 | Pcc Subspace Type 0 Info | Move to Arch Common NS |
|
||||
| 38 | Pcc Subspace Type 1 Info | Move to Arch Common NS |
|
||||
| 39 | Pcc Subspace Type 2 Info | Move to Arch Common NS |
|
||||
| 40 | Pcc Subspace Type 3 Info | Move to Arch Common NS |
|
||||
| 41 | Pcc Subspace Type 4 Info | Move to Arch Common NS |
|
||||
| 42 | Pcc Subspace Type 5 Info | Move to Arch Common NS |
|
||||
| 43 | Embedded Trace Extension/Module Info | |
|
||||
| 44 | P-State Dependency (PSD) Info | Move to Arch Common NS |
|
||||
| `*` | All other values are reserved. | |
|
||||
|
||||
#### Object ID's in the Arch Common Namespace:
|
||||
@ -496,4 +493,7 @@ The CM_OBJECT_ID type is used to identify the Configuration Manager
|
||||
| ---: | :-------------------------- | :--- |
|
||||
| 0 | Reserved | |
|
||||
| 1 | Power Management Profile Info | |
|
||||
| 2 | Serial Port Info | |
|
||||
| 3 | Serial Console Port Info | |
|
||||
| 4 | Serial Debug Port Info | |
|
||||
| `*` | All other values are reserved. | |
|
||||
|
Loading…
x
Reference in New Issue
Block a user