DynamicTablesPkg[all]  1.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
DynamicTableFactoryProtocol.h File Reference

Data Structures

struct  DynamicTableFactoryProtocol
 

Macros

#define EDKII_DYNAMIC_TABLE_FACTORY_PROTOCOL_GUID
 
#define EDKII_DYNAMIC_TABLE_FACTORY_PROTOCOL_REVISION   CREATE_REVISION (1, 0)
 

Typedefs

typedef struct
DynamicTableFactoryProtocol 
EDKII_DYNAMIC_TABLE_FACTORY_PROTOCOL
 
typedef struct
DynamicTableFactoryInfo 
EDKII_DYNAMIC_TABLE_FACTORY_INFO
 
typedef IN CONST
ACPI_TABLE_GENERATOR_ID 
GeneratorId
 
typedef IN CONST
ACPI_TABLE_GENERATOR_ID OUT
CONST ACPI_TABLE_GENERATOR
**CONST 
Generator
 

Functions

typedef EFI_STATUS (EFIAPI *EDKII_DYNAMIC_TABLE_FACTORY_GET_ACPI_TABLE_GENERATOR)(IN CONST EDKII_DYNAMIC_TABLE_FACTORY_PROTOCOL *CONST This
 

Variables

EFI_GUID gEdkiiDynamicTableFactoryProtocolGuid
 

Detailed Description

Copyright (c) 2017 - 2019, ARM Limited. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Glossary:
  • ACPI - Advanced Configuration and Power Interface
  • SMBIOS - System Management BIOS
  • DT - Device Tree

Macro Definition Documentation

#define EDKII_DYNAMIC_TABLE_FACTORY_PROTOCOL_GUID
Value:
{ 0x91d1e327, 0xfe5a, 0x49b8, \
{ 0xab, 0x65, 0xe, 0xce, 0x2d, 0xdb, 0x45, 0xec } \
};

This macro defines the Dynamic Table Factory Protocol GUID.

GUID: {91D1E327-FE5A-49B8-AB65-0ECE2DDB45EC}

#define EDKII_DYNAMIC_TABLE_FACTORY_PROTOCOL_REVISION   CREATE_REVISION (1, 0)

This macro defines the Configuration Manager Protocol Revision.

Typedef Documentation

typedef struct DynamicTableFactoryInfo EDKII_DYNAMIC_TABLE_FACTORY_INFO

Forward declarations:

A structure describing the Dynamic Table Factory Protocol interface.

typedef IN CONST DT_TABLE_GENERATOR_ID OUT CONST DT_TABLE_GENERATOR **CONST Generator

Function Documentation

typedef EFI_STATUS ( EFIAPI *  EDKII_CONFIGURATION_MANAGER_SET_OBJECT)

Return a pointer to the ACPI table generator.

Parameters
[in]ThisPointer to the Dynamic Table Factory Protocol.
[in]TableIdThe ACPI table generator ID for the requested generator.
[out]GeneratorPointer to the requested ACPI table generator.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_NOT_FOUNDThe requested generator is not found in the list of registered generators.

Registers an ACPI table generator.

Parameters
[in]GeneratorPointer to the ACPI table generator.
Return values
EFI_SUCCESSThe Generator was registered successfully.
EFI_INVALID_PARAMETERThe Generator ID is invalid or the Generator pointer is NULL.
EFI_ALREADY_STARTEDThe Generator for the Table ID is already registered.

Deregister an ACPI table generator.

Parameters
[in]GeneratorPointer to the ACPI table generator.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERThe generator is invalid.
EFI_NOT_FOUNDThe requested generator is not found in the list of registered generators.

Return a pointer to the SMBIOS table generator.

Parameters
[in]ThisPointer to the Dynamic Table Factory Protocol.
[in]TableIdThe SMBIOS table generator ID for the requested generator.
[out]GeneratorPointer to the requested SMBIOS table generator.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_NOT_FOUNDThe requested generator is not found in the list of registered generators.

Register a SMBIOS table generator.

Parameters
[in]GeneratorPointer to the SMBIOS table generator.
Return values
EFI_SUCCESSThe Generator was registered successfully.
EFI_INVALID_PARAMETERThe Generator ID is invalid or the Generator pointer is NULL.
EFI_ALREADY_STARTEDThe Generator for the Table ID is already registered.

Deregister a SMBIOS table generator.

Parameters
[in]GeneratorPointer to the SMBIOS table generator.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERThe generator is invalid.
EFI_NOT_FOUNDThe requested generator is not found in the list of registered generators.

Return a pointer to the Device Tree table generator.

Parameters
[in]ThisPointer to the Dynamic Table Factory Protocol.
[in]TableIdThe Device Tree table generator ID for the requested generator.
[out]GeneratorPointer to the requested Device Tree table generator.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_NOT_FOUNDThe requested generator is not found in the list of registered generators.

Register a DT table generator.

Parameters
[in]GeneratorPointer to the DT table generator.
Return values
EFI_SUCCESSThe Generator was registered successfully.
EFI_INVALID_PARAMETERThe Generator ID is invalid or the Generator pointer is NULL.
EFI_ALREADY_STARTEDThe Generator for the Table ID is already registered.

Deregister a DT table generator.

This function is called by the DT table generator to deregister itself from the DT table factory.

Parameters
[in]GeneratorPointer to the DT table generator.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERThe generator is invalid.
EFI_NOT_FOUNDThe requested generator is not found in the list of registered generators.

The SetObject function defines the interface implemented by the Configuration Manager Protocol for updating the Configuration Manager Objects.

Parameters
[in]ThisPointer to the Configuration Manager Protocol.
[in]CmObjectIdThe Configuration Manager Object ID.
[in]TokenAn optional token identifying the object. If unused this must be CM_NULL_TOKEN.
[out]CmObjectPointer to the Configuration Manager Object descriptor describing the Object.
Return values
EFI_SUCCESSThe operation completed successfully.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_NOT_FOUNDThe required object information is not found.
EFI_BAD_BUFFER_SIZEThe size returned by the Configuration Manager is less than the Object size for the requested object.
EFI_UNSUPPORTEDThis operation is not supported.

Variable Documentation

EFI_GUID gEdkiiDynamicTableFactoryProtocolGuid

The Dynamic Table Factory Protocol GUID.