DynamicTablesPkg[all]
1.0
|
Data Structures | |
struct | CmObjDescriptor |
Macros | |
#define | OBJECT_ID_MASK 0xFF |
#define | NAMESPACE_ID_MASK 0xF |
#define | NAMESPACE_ID_BIT_SHIFT 28 |
#define | GET_CM_NAMESPACE_ID(CmObjectId) |
#define | GET_CM_OBJECT_ID(CmObjectId) ((CmObjectId) & OBJECT_ID_MASK) |
#define | CREATE_CM_OBJECT_ID(NameSpaceId, ObjectId) |
#define | CREATE_CM_STD_OBJECT_ID(ObjectId) (CREATE_CM_OBJECT_ID (EObjNameSpaceStandard, ObjectId)) |
#define | CREATE_CM_ARM_OBJECT_ID(ObjectId) (CREATE_CM_OBJECT_ID (EObjNameSpaceArm, ObjectId)) |
#define | CREATE_CM_OEM_OBJECT_ID(ObjectId) (CREATE_CM_OBJECT_ID (EObjNameSpaceOem, ObjectId)) |
Typedefs | |
typedef UINT32 | CM_OBJECT_ID |
typedef enum ObjectNameSpaceID | EOBJECT_NAMESPACE_ID |
typedef struct CmObjDescriptor | CM_OBJ_DESCRIPTOR |
Enumerations | |
enum | ObjectNameSpaceID { EObjNameSpaceStandard, EObjNameSpaceArm, EObjNameSpaceOem = 0x8, EObjNameSpaceMax } |
Copyright (c) 2017 - 2019, ARM Limited. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
#define CREATE_CM_ARM_OBJECT_ID | ( | ObjectId | ) | (CREATE_CM_OBJECT_ID (EObjNameSpaceArm, ObjectId)) |
This macro returns a Configuration Manager Object ID in the ARM Object Namespace.
[in] | ObjectId | The Object ID. |
Returns | an ARM Configuration Manager Object ID. |
#define CREATE_CM_OBJECT_ID | ( | NameSpaceId, | |
ObjectId | |||
) |
This macro returns a Configuration Manager Object ID from the NameSpace ID and the ObjectID.
[in] | NameSpaceId | The namespace ID for the Object. |
[in] | ObjectId | The Object ID. |
Returns | the Configuration Manager Object ID. |
#define CREATE_CM_OEM_OBJECT_ID | ( | ObjectId | ) | (CREATE_CM_OBJECT_ID (EObjNameSpaceOem, ObjectId)) |
This macro returns a Configuration Manager Object ID in the OEM Object Namespace.
[in] | ObjectId | The Object ID. |
Returns | an OEM Configuration Manager Object ID. |
#define CREATE_CM_STD_OBJECT_ID | ( | ObjectId | ) | (CREATE_CM_OBJECT_ID (EObjNameSpaceStandard, ObjectId)) |
This macro returns a Configuration Manager Object ID in the Standard Object Namespace.
[in] | ObjectId | The Object ID. |
Returns | a Standard Configuration Manager Object ID. |
#define GET_CM_NAMESPACE_ID | ( | CmObjectId | ) |
This macro returns the namespace ID from the CmObjectID.
[in] | CmObjectId | The Configuration Manager Object ID. |
Returns | the Namespace ID corresponding to the CmObjectID. |
#define GET_CM_OBJECT_ID | ( | CmObjectId | ) | ((CmObjectId) & OBJECT_ID_MASK) |
This macro returns the Object ID from the CmObjectID.
[in] | CmObjectId | The Configuration Manager Object ID. |
Returns | the Object ID corresponding to the CmObjectID. |
#define NAMESPACE_ID_BIT_SHIFT 28 |
Starting bit position for Namespace ID
#define NAMESPACE_ID_MASK 0xF |
A mask for Namespace ID
#define OBJECT_ID_MASK 0xFF |
A mask for Object ID
typedef struct CmObjDescriptor CM_OBJ_DESCRIPTOR |
A descriptor for Configuration Manager Objects.
The Configuration Manager Protocol interface uses this descriptor to return the Configuration Manager Objects.
typedef UINT32 CM_OBJECT_ID |
The CM_OBJECT_ID type is used to identify the Configuration Manager objects.
Description of Configuration Manager Object ID
| Name Space ID || 0 | 0 | 0 | 0 || 0 | 0 | 0 | 0 || 0 | 0 | 0 | 0|
Bits: [31:28] - Name Space ID 0000 - Standard 0001 - ARM 1000 - Custom/OEM All other values are reserved.
Bits: [27:16] - Reserved.
| 0 | 0 | 0 | 0 || 0 | 0 | 0 | 0 || Object ID |
Bits: [15:8] - Are reserved and must be zero.
Bits: [7:0] - Object ID
Object ID's in the Standard Namespace: 0 - Configuration Manager Revision 1 - ACPI Table List 2 - SMBIOS Table List
Object ID's in the ARM Namespace: 0 - Reserved 1 - Boot Architecture Info 2 - CPU Info 3 - Power Management Profile Info 4 - GICC Info 5 - GICD Info 6 - GIC MSI Frame Info 7 - GIC Redistributor Info 8 - GIC ITS Info 9 - Serial Console Port Info 10 - Serial Debug Port Info 11 - Generic Timer Info 12 - Platform GT Block Info 13 - Generic Timer Block Frame Info 14 - Platform Generic Watchdog 15 - PCI Configuration Space Info 16 - Hypervisor Vendor Id 17 - Fixed feature flags for FADT 18 - ITS Group 19 - Named Component 20 - Root Complex 21 - SMMUv1 or SMMUv2 22 - SMMUv3 23 - PMCG 24 - GIC ITS Identifier Array 25 - ID Mapping Array 26 - SMMU Interrupt Array 27 - Processor Hierarchy Info 28 - Cache Info 29 - Processor Hierarchy Node ID Info 30 - CM Object Reference
typedef enum ObjectNameSpaceID EOBJECT_NAMESPACE_ID |
The EOBJECT_NAMESPACE_ID enum describes the defined namespaces for the Configuration Manager Objects.
enum ObjectNameSpaceID |