TianoCore EDK2 master
Loading...
Searching...
No Matches
OemMiscLib.h
Go to the documentation of this file.
1
12#ifndef OEM_MISC_LIB_H_
13#define OEM_MISC_LIB_H_
14
15#include <Uefi.h>
17
18typedef enum {
19 CpuCacheL1 = 1,
20 CpuCacheL2,
21 CpuCacheL3,
22 CpuCacheL4,
23 CpuCacheL5,
24 CpuCacheL6,
25 CpuCacheL7,
26 CpuCacheLevelMax
27} OEM_MISC_CPU_CACHE_LEVEL;
28
29typedef struct {
30 UINT8 Voltage;
31 UINT16 CurrentSpeed;
32 UINT16 MaxSpeed;
34 UINT16 CoreCount;
35 UINT16 CoresEnabled;
36 UINT16 ThreadCount;
38
39typedef enum {
40 BiosVersionType00,
41 ProductNameType01,
42 SerialNumType01,
43 UuidType01,
44 SystemManufacturerType01,
45 VersionType01,
46 SkuNumberType01,
47 FamilyType01,
48 AssetTagType02,
49 SerialNumberType02,
50 BoardManufacturerType02,
51 ProductNameType02,
52 VersionType02,
53 SkuNumberType02,
54 ChassisLocationType02,
55 AssetTagType03,
56 SerialNumberType03,
57 VersionType03,
58 ChassisTypeType03,
59 ManufacturerType03,
60 SkuNumberType03,
61 ProcessorPartNumType04,
62 ProcessorSerialNumType04,
63 ProcessorVersionType04,
64 SmbiosHiiStringFieldMax
65} OEM_MISC_SMBIOS_HII_STRING_FIELD;
66
67/*
68 * The following are functions that the each platform needs to
69 * implement in its OemMiscLib library.
70 */
71
79EFIAPI
81 IN UINT8 ProcessorIndex
82 );
83
94BOOLEAN
95EFIAPI
97 IN UINTN ProcessorIndex,
98 IN OUT PROCESSOR_STATUS_DATA *ProcessorStatus,
99 IN OUT PROCESSOR_CHARACTERISTIC_FLAGS *ProcessorCharacteristics,
100 IN OUT OEM_MISC_PROCESSOR_DATA *MiscProcessorData
101 );
102
113BOOLEAN
114EFIAPI
116 IN UINT8 ProcessorIndex,
117 IN UINT8 CacheLevel,
118 IN BOOLEAN DataCache,
119 IN BOOLEAN UnifiedCache,
120 IN OUT SMBIOS_TABLE_TYPE7 *SmbiosCacheTable
121 );
122
127UINT8
128EFIAPI
130 VOID
131 );
132
138EFIAPI
140 VOID
141 );
142
149BOOLEAN
150EFIAPI
152 IN UINTN ProcessorIndex
153 );
154
161VOID
162EFIAPI
164 IN EFI_HII_HANDLE HiiHandle,
165 IN EFI_STRING_ID TokenToUpdate,
166 IN OEM_MISC_SMBIOS_HII_STRING_FIELD Field
167 );
168
174EFIAPI
176 VOID
177 );
178
184EFIAPI
186 VOID
187 );
188
194EFIAPI
196 VOID
197 );
198
204EFIAPI
206 VOID
207 );
208
214EFIAPI
216 VOID
217 );
218
223UINT8
224EFIAPI
226 VOID
227 );
228
233UINT8
234EFIAPI
236 VOID
237 );
238
245VOID
246EFIAPI
248 OUT GUID *SystemUuid
249 );
250
255UINT16
256EFIAPI
258 VOID
259 );
260
265UINT16
266EFIAPI
268 VOID
269 );
270
271#endif // OEM_MISC_LIB_H_
UINT64 UINTN
MISC_BOOT_INFORMATION_STATUS_DATA_TYPE
Definition: SmBios.h:2417
MISC_CHASSIS_SECURITY_STATE
Definition: SmBios.h:464
MISC_CHASSIS_STATE
Definition: SmBios.h:452
MISC_CHASSIS_TYPE
Definition: SmBios.h:410
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
MISC_CHASSIS_STATE EFIAPI OemGetChassisBootupState(VOID)
Definition: OemMiscLib.c:165
BOOLEAN EFIAPI OemIsProcessorPresent(IN UINTN ProcessorIndex)
Definition: OemMiscLib.c:120
UINT8 EFIAPI OemGetChassisNumPowerCords(VOID)
Definition: OemMiscLib.c:235
VOID EFIAPI OemUpdateSmbiosInfo(IN EFI_HII_HANDLE HiiHandle, IN EFI_STRING_ID TokenToUpdate, IN OEM_MISC_SMBIOS_HII_STRING_FIELD Field)
Definition: OemMiscLib.c:136
MISC_BOOT_INFORMATION_STATUS_DATA_TYPE EFIAPI OemGetBootStatus(VOID)
Definition: OemMiscLib.c:151
BOOLEAN EFIAPI OemGetProcessorInformation(IN UINTN ProcessorIndex, IN OUT PROCESSOR_STATUS_DATA *ProcessorStatus, IN OUT PROCESSOR_CHARACTERISTIC_FLAGS *ProcessorCharacteristics, IN OUT OEM_MISC_PROCESSOR_DATA *MiscProcessorData)
Definition: OemMiscLib.c:49
UINT8 EFIAPI OemGetChassisHeight(VOID)
Definition: OemMiscLib.c:221
MISC_CHASSIS_SECURITY_STATE EFIAPI OemGetChassisSecurityStatus(VOID)
Definition: OemMiscLib.c:207
UINT16 EFIAPI OemGetEmbeddedControllerFirmwareRelease(VOID)
Definition: OemMiscLib.c:279
UINTN EFIAPI OemGetCpuFreq(IN UINT8 ProcessorIndex)
Definition: OemMiscLib.c:29
MISC_CHASSIS_TYPE EFIAPI OemGetChassisType(VOID)
Definition: OemMiscLib.c:104
VOID EFIAPI OemGetSystemUuid(OUT GUID *SystemUuid)
Definition: OemMiscLib.c:251
UINT16 EFIAPI OemGetBiosRelease(VOID)
Definition: OemMiscLib.c:265
BOOLEAN EFIAPI OemGetCacheInformation(IN UINT8 ProcessorIndex, IN UINT8 CacheLevel, IN BOOLEAN DataCache, IN BOOLEAN UnifiedCache, IN OUT SMBIOS_TABLE_TYPE7 *SmbiosCacheTable)
Definition: OemMiscLib.c:72
MISC_CHASSIS_STATE EFIAPI OemGetChassisPowerSupplyState(VOID)
Definition: OemMiscLib.c:179
MISC_CHASSIS_STATE EFIAPI OemGetChassisThermalState(VOID)
Definition: OemMiscLib.c:193
UINT8 EFIAPI OemGetMaxProcessors(VOID)
Definition: OemMiscLib.c:90
VOID * EFI_HII_HANDLE
Definition: Base.h:213
UINT16 MaxSpeed
Maximum clock speed in MHz.
Definition: OemMiscLib.h:32
UINT16 ExternalClock
External clock speed in MHz.
Definition: OemMiscLib.h:33
UINT16 ThreadCount
Number of threads per processor.
Definition: OemMiscLib.h:36
UINT8 Voltage
Processor voltage.
Definition: OemMiscLib.h:30
UINT16 CurrentSpeed
Current clock speed in MHz.
Definition: OemMiscLib.h:31
UINT16 CoreCount
Number of cores available.
Definition: OemMiscLib.h:34
UINT16 CoresEnabled
Number of cores enabled.
Definition: OemMiscLib.h:35