TianoCore EDK2 master
Loading...
Searching...
No Matches
SmbiosMisc.h
Go to the documentation of this file.
1
14#ifndef SMBIOS_MISC_H_
15#define SMBIOS_MISC_H_
16
17#include <Protocol/Smbios.h>
19
20//
21// Data table entry update function.
22//
23typedef EFI_STATUS (EFIAPI SMBIOS_MISC_DATA_FUNCTION)(
24 IN VOID *RecordData,
26 );
27
28//
29// Data table entry definition.
30//
31typedef struct {
32 //
33 // intermediate input data for SMBIOS record
34 //
35 VOID *RecordData;
36 SMBIOS_MISC_DATA_FUNCTION *Function;
38
39//
40// SMBIOS table extern definitions
41//
42#define SMBIOS_MISC_TABLE_EXTERNS(NAME1, NAME2, NAME3) \
43extern NAME1 NAME2 ## Data; \
44extern SMBIOS_MISC_DATA_FUNCTION NAME3 ## Function;
45
46//
47// SMBIOS data table entries
48//
49// This is used to define a pair of table structure pointer and functions
50// in order to iterate through the list of tables, populate them and add
51// them into the system.
52#define SMBIOS_MISC_TABLE_ENTRY_DATA_AND_FUNCTION(NAME1, NAME2) \
53{ \
54 & NAME1 ## Data, \
55 NAME2 ## Function \
56}
57
58//
59// Global definition macros.
60//
61#define SMBIOS_MISC_TABLE_DATA(NAME1, NAME2) \
62 NAME1 NAME2 ## Data
63
64#define SMBIOS_MISC_TABLE_FUNCTION(NAME2) \
65 EFI_STATUS EFIAPI NAME2 ## Function( \
66 IN VOID *RecordData, \
67 IN EFI_SMBIOS_PROTOCOL *Smbios \
68 )
69
70//
71// Data Table Array Entries
72//
73extern EFI_HII_HANDLE mSmbiosMiscHiiHandle;
74
76 UINT8 *LanguageSignature;
77 EFI_STRING_ID InstallableLanguageLongString;
78 EFI_STRING_ID InstallableLanguageAbbreviateString;
80
100 IN UINT8 *Buffer,
101 IN OUT EFI_SMBIOS_HANDLE *SmbiosHandle OPTIONAL
102 );
103
112VOID
114 IN UINT8 SmbiosType,
115 OUT UINT16 **HandleArray,
116 OUT UINTN *HandleCount
117 );
118
119//
120// Data Table Array
121//
122extern SMBIOS_MISC_DATA_TABLE mSmbiosMiscDataTable[];
123
124//
125// Data Table Array Entries
126//
127extern UINTN mSmbiosMiscDataTableEntries;
128extern UINT8 mSmbiosMiscDxeStrings[];
129
130#endif // SMBIOS_MISC_H_
UINT64 UINTN
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
VOID SmbiosMiscGetLinkTypeHandle(IN UINT8 SmbiosType, OUT UINT16 **HandleArray, OUT UINTN *HandleCount)
EFI_STATUS SmbiosMiscAddRecord(IN UINT8 *Buffer, IN OUT EFI_SMBIOS_HANDLE *SmbiosHandle OPTIONAL)
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
VOID * EFI_HII_HANDLE