9#ifndef SMBIOS_TABLE_GENERATOR_H_
10#define SMBIOS_TABLE_GENERATOR_H_
29 EStdSmbiosTableIdReserved = 0x0000,
31 EStdSmbiosTableIdType00,
32 EStdSmbiosTableIdType01,
33 EStdSmbiosTableIdType02,
34 EStdSmbiosTableIdType03,
35 EStdSmbiosTableIdType04,
36 EStdSmbiosTableIdType05,
37 EStdSmbiosTableIdType06,
38 EStdSmbiosTableIdType07,
39 EStdSmbiosTableIdType08,
40 EStdSmbiosTableIdType09,
41 EStdSmbiosTableIdType10,
42 EStdSmbiosTableIdType11,
43 EStdSmbiosTableIdType12,
44 EStdSmbiosTableIdType13,
45 EStdSmbiosTableIdType14,
46 EStdSmbiosTableIdType15,
47 EStdSmbiosTableIdType16,
48 EStdSmbiosTableIdType17,
49 EStdSmbiosTableIdType18,
50 EStdSmbiosTableIdType19,
51 EStdSmbiosTableIdType20,
52 EStdSmbiosTableIdType21,
53 EStdSmbiosTableIdType22,
54 EStdSmbiosTableIdType23,
55 EStdSmbiosTableIdType24,
56 EStdSmbiosTableIdType25,
57 EStdSmbiosTableIdType26,
58 EStdSmbiosTableIdType27,
59 EStdSmbiosTableIdType28,
60 EStdSmbiosTableIdType29,
61 EStdSmbiosTableIdType30,
62 EStdSmbiosTableIdType31,
63 EStdSmbiosTableIdType32,
64 EStdSmbiosTableIdType33,
65 EStdSmbiosTableIdType34,
66 EStdSmbiosTableIdType35,
67 EStdSmbiosTableIdType36,
68 EStdSmbiosTableIdType37,
69 EStdSmbiosTableIdType38,
70 EStdSmbiosTableIdType39,
71 EStdSmbiosTableIdType40,
72 EStdSmbiosTableIdType41,
73 EStdSmbiosTableIdType42,
77 EStdSmbiosTableIdType126 = (EStdSmbiosTableIdType00 + 126),
78 EStdSmbiosTableIdType127,
90#define IS_GENERATOR_TYPE_SMBIOS(TableGeneratorId) \
92 GET_TABLE_TYPE (TableGeneratorId) == \
93 ETableGeneratorTypeSmbios \
104#define IS_VALID_STD_SMBIOS_GENERATOR_ID(TableGeneratorId) \
106 IS_GENERATOR_NAMESPACE_STD(TableGeneratorId) && \
107 IS_GENERATOR_TYPE_SMBIOS(TableGeneratorId) && \
108 ((GET_TABLE_ID(GeneratorId) >= EStdSmbiosTableIdRaw) && \
109 (GET_TABLE_ID(GeneratorId) < EStdSmbiosTableIdMax)) \
118#define CREATE_STD_SMBIOS_TABLE_GEN_ID(TableId) \
119 CREATE_TABLE_GEN_ID ( \
120 ETableGeneratorTypeSmbios, \
121 ETableGeneratorNameSpaceStd, \
EFI_STATUS EFIAPI DeregisterSmbiosTableGenerator(IN CONST SMBIOS_TABLE_GENERATOR *CONST Generator)
EFI_STATUS(* SMBIOS_TABLE_GENERATOR_FREE_TABLE)(IN CONST SMBIOS_TABLE_GENERATOR *Generator, IN CONST CM_STD_OBJ_SMBIOS_TABLE_INFO *CONST SmbiosTableInfo, IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST CfgMgrProtocol, IN SMBIOS_STRUCTURE **Table)
enum StdSmbiosTableGeneratorId ESTD_SMBIOS_TABLE_ID
EFI_STATUS EFIAPI RegisterSmbiosTableGenerator(IN CONST SMBIOS_TABLE_GENERATOR *CONST Generator)
TABLE_GENERATOR_ID SMBIOS_TABLE_GENERATOR_ID
EFI_STATUS(* SMBIOS_TABLE_GENERATOR_BUILD_TABLE)(IN CONST SMBIOS_TABLE_GENERATOR *Generator, IN CM_STD_OBJ_SMBIOS_TABLE_INFO *CONST SmbiosTableInfo, IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST CfgMgrProtocol, OUT SMBIOS_STRUCTURE **Table)
struct SmbiosTableGenerator SMBIOS_TABLE_GENERATOR
StdSmbiosTableGeneratorId
UINT32 TABLE_GENERATOR_ID
SMBIOS_TABLE_GENERATOR_ID GeneratorID
The SMBIOS table generator ID.
CONST CHAR16 * Description
SMBIOS_TABLE_GENERATOR_FREE_TABLE FreeTableResources
SMBIOS_TABLE_GENERATOR_BUILD_TABLE BuildSmbiosTable
SMBIOS table build function pointer.
SMBIOS_TYPE Type
The SMBIOS table type.