]> git.proxmox.com Git - mirror_edk2.git/blame - Vlv2TbltDevicePkg/SmBiosMiscDxe/MiscSubclassDriver.h
Vlv2TbltDevicePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / Vlv2TbltDevicePkg / SmBiosMiscDxe / MiscSubclassDriver.h
CommitLineData
3cbfba02
DW
1/** @file\r
2\r
3Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>\r
4 \r\r
9dc8036d
MK
5 SPDX-License-Identifier: BSD-2-Clause-Patent\r
6\r
3cbfba02
DW
7 \r\r
8\r
9\r
10Module Name:\r
11\r
12 MiscSubclassDriver.h\r
13\r
14Abstract:\r
15\r
16 Header file for MiscSubclass Driver.\r
17\r
18\r
19**/\r
20\r
21#ifndef _MISC_SUBCLASS_DRIVER_H\r
22#define _MISC_SUBCLASS_DRIVER_H\r
23\r
24\r
25#include "CommonHeader.h"\r
26\r
27extern UINT8 MiscSubclassStrings[];\r
28\r
29\r
30#define T14_FVI_STRING "Driver/firmware version"\r
31#define EFI_SMBIOS_TYPE_FIRMWARE_VERSION_INFO 0x90\r
32#define EFI_SMBIOS_TYPE_MISC_VERSION_INFO 0x94\r
33#define TOUCH_ACPI_ID "I2C05\\SFFFF\\400K"\r
34#define TOUCH_RESET_GPIO_MMIO 0xFED0C508\r
35#define EFI_SMBIOS_TYPE_SEC_INFO 0x83\r
36#define IntelIdentifer 0x6F725076\r
37\r
38//\r
39// Data table entry update function.\r
40//\r
41typedef EFI_STATUS (EFIAPI EFI_MISC_SMBIOS_DATA_FUNCTION) (\r
42 IN VOID *RecordData,\r
43 IN EFI_SMBIOS_PROTOCOL *Smbios\r
44 );\r
45\r
46//\r
47// Data table entry definition.\r
48//\r
49typedef struct {\r
50 //\r
51 // intermediat input data for SMBIOS record\r
52 //\r
53 VOID *RecordData;\r
54 EFI_MISC_SMBIOS_DATA_FUNCTION *Function;\r
55} EFI_MISC_SMBIOS_DATA_TABLE;\r
56\r
57//\r
58// Data Table extern definitions.\r
59//\r
60#define MISC_SMBIOS_TABLE_EXTERNS(NAME1, NAME2, NAME3) \\r
61extern NAME1 NAME2 ## Data; \\r
62extern EFI_MISC_SMBIOS_DATA_FUNCTION NAME3 ## Function\r
63\r
64\r
65//\r
66// Data Table entries\r
67//\r
68#define MISC_SMBIOS_TABLE_ENTRY_DATA_AND_FUNCTION(NAME1, NAME2) \\r
69{ \\r
70 & NAME1 ## Data, \\r
71 & NAME2 ## Function \\r
72}\r
73\r
74//\r
75// Global definition macros.\r
76//\r
77#define MISC_SMBIOS_TABLE_DATA(NAME1, NAME2) \\r
78 NAME1 NAME2 ## Data\r
79\r
80#define MISC_SMBIOS_TABLE_FUNCTION(NAME2) \\r
81 EFI_STATUS EFIAPI NAME2 ## Function( \\r
82 IN VOID *RecordData, \\r
83 IN EFI_SMBIOS_PROTOCOL *Smbios \\r
84 )\r
85\r
86#pragma pack(1)\r
87\r
88//\r
89// This is definition for SMBIOS Oem data type 0x90\r
90//\r
91typedef struct {\r
92 STRING_REF SECVersion;\r
93 STRING_REF uCodeVersion;\r
94 STRING_REF GOPVersion;\r
95 STRING_REF CpuStepping;\r
96} EFI_MISC_OEM_TYPE_0x90;\r
97\r
98//\r
99// This is definition for SMBIOS Oem data type 0x90\r
100//\r
101typedef struct {\r
102 SMBIOS_STRUCTURE Hdr;\r
103 SMBIOS_TABLE_STRING SECVersion;\r
104 SMBIOS_TABLE_STRING uCodeVersion;\r
105 SMBIOS_TABLE_STRING GOPVersion;\r
106 SMBIOS_TABLE_STRING CpuStepping;\r
107} SMBIOS_TABLE_TYPE90;\r
108\r
109typedef struct {\r
110 STRING_REF GopVersion;\r
111 STRING_REF UCodeVersion;\r
112 STRING_REF MRCVersion;\r
113 STRING_REF SECVersion;\r
114 STRING_REF ULPMCVersion;\r
115 STRING_REF PMCVersion;\r
116 STRING_REF PUnitVersion;\r
117 STRING_REF SoCVersion;\r
118 STRING_REF BoardVersion;\r
119 STRING_REF FabVersion;\r
120 STRING_REF CPUFlavor;\r
121 STRING_REF BiosVersion;\r
122 STRING_REF PmicVersion;\r
123 STRING_REF TouchVersion;\r
124 STRING_REF SecureBoot;\r
125 STRING_REF BootMode;\r
126 STRING_REF SpeedStepMode;\r
127 STRING_REF CPUTurboMode;\r
128 STRING_REF MaxCState;\r
129 STRING_REF GfxTurbo;\r
130 STRING_REF IdleReserve;\r
131 STRING_REF RC6;\r
132}EFI_MISC_OEM_TYPE_0x94;\r
133\r
134typedef struct {\r
135 SMBIOS_STRUCTURE Hdr;\r
136 SMBIOS_TABLE_STRING GopVersion;\r
137 SMBIOS_TABLE_STRING uCodeVersion;\r
138 SMBIOS_TABLE_STRING MRCVersion;\r
139 SMBIOS_TABLE_STRING SECVersion;\r
140 SMBIOS_TABLE_STRING ULPMCVersion;\r
141 SMBIOS_TABLE_STRING PMCVersion;\r
142 SMBIOS_TABLE_STRING PUnitVersion;\r
143 SMBIOS_TABLE_STRING SoCVersion;\r
144 SMBIOS_TABLE_STRING BoardVersion;\r
145 SMBIOS_TABLE_STRING FabVersion;\r
146 SMBIOS_TABLE_STRING CPUFlavor;\r
147 SMBIOS_TABLE_STRING BiosVersion;\r
148 SMBIOS_TABLE_STRING PmicVersion;\r
149 SMBIOS_TABLE_STRING TouchVersion;\r
150 SMBIOS_TABLE_STRING SecureBoot;\r
151 SMBIOS_TABLE_STRING BootMode;\r
152 SMBIOS_TABLE_STRING SpeedStepMode;\r
153 SMBIOS_TABLE_STRING CPUTurboMode;\r
154 SMBIOS_TABLE_STRING MaxCState;\r
155 SMBIOS_TABLE_STRING GfxTurbo;\r
156 SMBIOS_TABLE_STRING IdleReserve;\r
157 SMBIOS_TABLE_STRING RC6;\r
158}SMBIOS_TABLE_TYPE94;\r
159\r
160#pragma pack()\r
161//\r
162// Data Table Array\r
163//\r
164extern EFI_MISC_SMBIOS_DATA_TABLE mMiscSubclassDataTable[];\r
165\r
166//\r
167// Data Table Array Entries\r
168//\r
169extern UINTN mMiscSubclassDataTableEntries;\r
170extern EFI_HII_HANDLE mHiiHandle;\r
171\r
172//\r
173// Prototypes\r
174//\r
175EFI_STATUS\r
176EFIAPI\r
177MiscSubclassDriverEntryPoint (\r
178 IN EFI_HANDLE ImageHandle,\r
179 IN EFI_SYSTEM_TABLE *SystemTable\r
180 );\r
181\r
182EFI_STRING\r
183EFIAPI\r
184SmbiosMiscGetString (\r
185 IN EFI_STRING_ID StringId\r
186 );\r
187\r
188#endif\r