DynamicTablesPkg[all]
1.0
|
Data Structures | |
struct | DtTableGenerator |
Macros | |
#define | IS_GENERATOR_TYPE_DT(TableGeneratorId) (GET_TABLE_TYPE(TableGeneratorId) == ETableGeneratorTypeDt) |
#define | IS_VALID_STD_DT_GENERATOR_ID(TableGeneratorId) |
#define | CREATE_STD_DT_TABLE_GEN_ID(TableId) |
Typedefs | |
typedef TABLE_GENERATOR_ID | DT_TABLE_GENERATOR_ID |
typedef enum StdDtTableId | ESTD_DT_TABLE_ID |
typedef struct ConfigurationManagerProtocol | EDKII_CONFIGURATION_MANAGER_PROTOCOL |
typedef struct CmAStdObjDtTableInfo | CM_STD_OBJ_DT_TABLE_INFO |
typedef struct DtTableGenerator | DT_TABLE_GENERATOR |
typedef EFI_STATUS(* | DT_TABLE_GENERATOR_BUILD_TABLE )(IN CONST DT_TABLE_GENERATOR *Generator, IN CONST CM_STD_OBJ_DT_TABLE_INFO *CONST DtTableInfo, IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST CfgMgrProtocol, OUT VOID **Table) |
typedef EFI_STATUS(* | DT_TABLE_GENERATOR_FREE_TABLE )(IN CONST DT_TABLE_GENERATOR *Generator, IN CONST CM_STD_OBJ_DT_TABLE_INFO *CONST DtTableInfo, IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST CfgMgrProtocol, IN VOID **Table) |
Enumerations | |
enum | StdDtTableId { EStdDtTableIdReserved = 0x0000, EStdDtTableIdRaw, EStdDtTableIdMax } |
Functions | |
EFI_STATUS EFIAPI | RegisterDtTableGenerator (IN CONST DT_TABLE_GENERATOR *CONST Generator) |
EFI_STATUS EFIAPI | DeregisterDtTableGenerator (IN CONST DT_TABLE_GENERATOR *CONST Generator) |
Copyright (c) 2017 - 2019, ARM Limited. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
#define CREATE_STD_DT_TABLE_GEN_ID | ( | TableId | ) |
This macro creates a standard DT Table Generator ID.
[in] | TableId | The table generator ID. |
#define IS_GENERATOR_TYPE_DT | ( | TableGeneratorId | ) | (GET_TABLE_TYPE(TableGeneratorId) == ETableGeneratorTypeDt) |
This macro checks if the Table Generator ID is for an DT Table Generator.
[in] | TableGeneratorId | The table generator ID. |
#define IS_VALID_STD_DT_GENERATOR_ID | ( | TableGeneratorId | ) |
This macro checks if the Table Generator ID is for a standard DT Table Generator.
[in] | TableGeneratorId | The table generator ID. |
typedef struct CmAStdObjDtTableInfo CM_STD_OBJ_DT_TABLE_INFO |
typedef struct DtTableGenerator DT_TABLE_GENERATOR |
The DT_TABLE_GENERATOR structure provides an interface that the Table Manager can use to invoke the functions to build DT tables.
typedef EFI_STATUS(* DT_TABLE_GENERATOR_BUILD_TABLE)(IN CONST DT_TABLE_GENERATOR *Generator, IN CONST CM_STD_OBJ_DT_TABLE_INFO *CONST DtTableInfo, IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST CfgMgrProtocol, OUT VOID **Table) |
This function pointer describes the interface to DT table build functions provided by the DT table generator and called by the Table Manager to build an DT table.
[in] | Generator | Pointer to the DT table generator. |
[in] | DtTableInfo | Pointer to the DT table information. |
[in] | CfgMgrProtocol | Pointer to the Configuration Manager Protocol interface. |
[out] | Table | Pointer to the generated DT table. |
typedef EFI_STATUS(* DT_TABLE_GENERATOR_FREE_TABLE)(IN CONST DT_TABLE_GENERATOR *Generator, IN CONST CM_STD_OBJ_DT_TABLE_INFO *CONST DtTableInfo, IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST CfgMgrProtocol, IN VOID **Table) |
This function pointer describes the interface to used by the Table Manager to give the generator an opportunity to free any resources allocated for building the DT table.
[in] | Generator | Pointer to the DT table generator. |
[in] | DtTableInfo | Pointer to the DT table information. |
[in] | CfgMgrProtocol | Pointer to the Configuration Manager Protocol interface. |
[in] | Table | Pointer to the generated DT table. |
The DT_TABLE_GENERATOR_ID type describes Device Tree table generator ID.
typedef struct ConfigurationManagerProtocol EDKII_CONFIGURATION_MANAGER_PROTOCOL |
Forward declarations.
The EDKII_CONFIGURATION_MANAGER_PROTOCOL structure describes the Configuration Manager Protocol interface.
typedef enum StdDtTableId ESTD_DT_TABLE_ID |
The ESTD_DT_TABLE_ID enum describes the DT table IDs reserved for the standard generators.
enum StdDtTableId |
EFI_STATUS EFIAPI DeregisterDtTableGenerator | ( | IN CONST DT_TABLE_GENERATOR *CONST | Generator | ) |
Deregister DT generator.
This function is called by the DT table generator to deregister itself from the DT table factory.
[in] | Generator | Pointer to the DT table generator. |
EFI_SUCCESS | Success. |
EFI_INVALID_PARAMETER | The generator is invalid. |
EFI_NOT_FOUND | The requested generator is not found in the list of registered generators. |
EFI_STATUS EFIAPI RegisterDtTableGenerator | ( | IN CONST DT_TABLE_GENERATOR *CONST | Generator | ) |
Register DT table factory generator.
The DT table factory maintains a list of the Standard and OEM DT table generators.
[in] | Generator | Pointer to the DT table generator. |
EFI_SUCCESS | The Generator was registered successfully. |
EFI_INVALID_PARAMETER | The Generator ID is invalid or the Generator pointer is NULL. |
EFI_ALREADY_STARTED | The Generator for the Table ID is already registered. |