]> git.proxmox.com Git - mirror_edk2.git/blame - EmulatorPkg/PlatformSmbiosDxe/SmbiosTable.c
EmulatorPkg: Apply uncrustify changes
[mirror_edk2.git] / EmulatorPkg / PlatformSmbiosDxe / SmbiosTable.c
CommitLineData
f58ba9ed
JJ
1/** @file\r
2 Static SMBIOS Table for platform\r
3\r
4 Note SMBIOS 2.7.1 Required structures:\r
5 BIOS Information (Type 0)\r
6 System Information (Type 1)\r
7 System Enclosure (Type 3)\r
8 Processor Information (Type 4) - CPU Driver\r
9 Cache Information (Type 7) - For cache that is external to processor\r
10 System Slots (Type 9) - If system has slots\r
79e4f2a5 11 Physical Memory Array (Type 16)\r
f58ba9ed
JJ
12 Memory Device (Type 17) - For each socketed system-memory Device\r
13 Memory Array Mapped Address (Type 19) - One per contiguous block per Physical Memroy Array\r
14 System Boot Information (Type 32)\r
15\r
16 Copyright (c) 2012, Apple Inc. All rights reserved.<BR>\r
e3ba31da 17 SPDX-License-Identifier: BSD-2-Clause-Patent\r
f58ba9ed
JJ
18\r
19**/\r
20\r
21#include <PiDxe.h>\r
22#include <IndustryStandard/SmBios.h>\r
23#include <Protocol/Smbios.h>\r
24#include <Library/SmbiosLib.h>\r
25\r
a550d468 26SMBIOS_TABLE_TYPE0 gSmbiosType0Template = {\r
f58ba9ed
JJ
27 { EFI_SMBIOS_TYPE_BIOS_INFORMATION, sizeof (SMBIOS_TABLE_TYPE0), 0 },\r
28 1, // Vendor String\r
29 2, // BiosVersion String\r
30 0xE000, // BiosSegment\r
31 3, // BiosReleaseDate String\r
32 0x7F, // BiosSize\r
a550d468 33 { // BiosCharacteristics\r
f58ba9ed
JJ
34 0, // Reserved :2; ///< Bits 0-1.\r
35 0, // Unknown :1;\r
36 0, // BiosCharacteristicsNotSupported :1;\r
37 0, // IsaIsSupported :1;\r
38 0, // McaIsSupported :1;\r
39 0, // EisaIsSupported :1;\r
40 1, // PciIsSupported :1;\r
41 0, // PcmciaIsSupported :1;\r
42 0, // PlugAndPlayIsSupported :1;\r
43 0, // ApmIsSupported :1;\r
44 1, // BiosIsUpgradable :1;\r
45 1, // BiosShadowingAllowed :1;\r
46 0, // VlVesaIsSupported :1;\r
47 0, // EscdSupportIsAvailable :1;\r
48 0, // BootFromCdIsSupported :1;\r
49 1, // SelectableBootIsSupported :1;\r
50 0, // RomBiosIsSocketed :1;\r
51 0, // BootFromPcmciaIsSupported :1;\r
52 0, // EDDSpecificationIsSupported :1;\r
53 0, // JapaneseNecFloppyIsSupported :1;\r
54 0, // JapaneseToshibaFloppyIsSupported :1;\r
55 0, // Floppy525_360IsSupported :1;\r
56 0, // Floppy525_12IsSupported :1;\r
57 0, // Floppy35_720IsSupported :1;\r
58 0, // Floppy35_288IsSupported :1;\r
59 0, // PrintScreenIsSupported :1;\r
60 0, // Keyboard8042IsSupported :1;\r
61 0, // SerialIsSupported :1;\r
62 0, // PrinterIsSupported :1;\r
63 0, // CgaMonoIsSupported :1;\r
64 0, // NecPc98 :1;\r
79e4f2a5 65 0 // ReservedForVendor :32; ///< Bits 32-63. Bits 32-47 reserved for BIOS vendor\r
a550d468 66 ///< and bits 48-63 reserved for System Vendor.\r
79e4f2a5 67 },\r
f58ba9ed
JJ
68 { // BIOSCharacteristicsExtensionBytes[]\r
69 0x81, // AcpiIsSupported :1;\r
70 // UsbLegacyIsSupported :1;\r
71 // AgpIsSupported :1;\r
72 // I2OBootIsSupported :1;\r
73 // Ls120BootIsSupported :1;\r
74 // AtapiZipDriveBootIsSupported :1;\r
75 // Boot1394IsSupported :1;\r
76 // SmartBatteryIsSupported :1;\r
a550d468 77 // BIOSCharacteristicsExtensionBytes[1]\r
f58ba9ed
JJ
78 0x0a, // BiosBootSpecIsSupported :1;\r
79 // FunctionKeyNetworkBootIsSupported :1;\r
80 // TargetContentDistributionEnabled :1;\r
81 // UefiSpecificationSupported :1;\r
82 // VirtualMachineSupported :1;\r
83 // ExtensionByte2Reserved :3;\r
84 },\r
85 0x00, // SystemBiosMajorRelease\r
86 0x01, // SystemBiosMinorRelease\r
87 0xFF, // EmbeddedControllerFirmwareMajorRelease\r
88 0xFF, // EmbeddedControllerFirmwareMinorRelease\r
89};\r
a550d468
MK
90CHAR8 *gSmbiosType0Strings[] = {\r
91 "http://www.tianocore.org/edk2/", // Vendor String\r
92 __TIME__, // BiosVersion String\r
93 __DATE__, // BiosReleaseDate String\r
f58ba9ed
JJ
94 NULL\r
95};\r
96\r
a550d468
MK
97SMBIOS_TABLE_TYPE1 gSmbiosType1Template = {\r
98 { EFI_SMBIOS_TYPE_SYSTEM_INFORMATION, sizeof (SMBIOS_TABLE_TYPE1), 0 },\r
f58ba9ed
JJ
99 1, // Manufacturer String\r
100 2, // ProductName String\r
101 3, // Version String\r
102 4, // SerialNumber String\r
a550d468
MK
103 { 0x25EF0280, 0xEC82, 0x42B0, { 0x8F, 0xB6, 0x10, 0xAD, 0xCC, 0xC6, 0x7C, 0x02}\r
104 },\r
79e4f2a5 105 SystemWakeupTypePowerSwitch,\r
f58ba9ed
JJ
106 5, // SKUNumber String\r
107 6, // Family String\r
108};\r
a550d468 109CHAR8 *gSmbiosType1Strings[] = {\r
dff5a05b 110 "http://www.tianocore.org/edk2/",\r
f58ba9ed
JJ
111 "EmulatorPkg",\r
112 "1.0",\r
113 "System Serial#",\r
114 "System SKU#",\r
115 "edk2",\r
79e4f2a5 116 NULL\r
f58ba9ed
JJ
117};\r
118\r
119SMBIOS_TABLE_TYPE2 gSmbiosType2Template = {\r
120 { EFI_SMBIOS_TYPE_BASEBOARD_INFORMATION, sizeof (SMBIOS_TABLE_TYPE2), 0 },\r
121 1, // Manufacturer String\r
122 2, // ProductName String\r
123 3, // Version String\r
124 4, // SerialNumber String\r
125 5, // AssetTag String\r
126 { // FeatureFlag\r
a550d468
MK
127 1, // Motherboard :1;\r
128 0, // RequiresDaughterCard :1;\r
129 0, // Removable :1;\r
130 0, // Replaceable :1;\r
131 0, // HotSwappable :1;\r
132 0, // Reserved :3;\r
f58ba9ed 133 },\r
a550d468 134 6, // LocationInChassis String\r
f58ba9ed 135 0, // ChassisHandle;\r
79e4f2a5 136 BaseBoardTypeMotherBoard, // BoardType;\r
f58ba9ed
JJ
137 0, // NumberOfContainedObjectHandles;\r
138 { 0 } // ContainedObjectHandles[1];\r
139};\r
a550d468 140CHAR8 *gSmbiosType2Strings[] = {\r
dff5a05b 141 "http://www.tianocore.org/edk2/",\r
f58ba9ed
JJ
142 "EmulatorPkg",\r
143 "1.0",\r
144 "Base Board Serial#",\r
145 "Base Board Asset Tag#",\r
146 "Part Component",\r
79e4f2a5 147 NULL\r
f58ba9ed
JJ
148};\r
149\r
150SMBIOS_TABLE_TYPE3 gSmbiosType3Template = {\r
151 { EFI_SMBIOS_TYPE_SYSTEM_ENCLOSURE, sizeof (SMBIOS_TABLE_TYPE3), 0 },\r
a550d468
MK
152 1, // Manufacturer String\r
153 MiscChassisTypeLapTop, // Type;\r
154 2, // Version String\r
155 3, // SerialNumber String\r
156 4, // AssetTag String\r
157 ChassisStateSafe, // BootupState;\r
158 ChassisStateSafe, // PowerSupplyState;\r
159 ChassisStateSafe, // ThermalState;\r
160 ChassisSecurityStatusNone, // SecurityStatus;\r
161 { 0, 0, 0, 0}, // OemDefined[4];\r
162 0, // Height;\r
163 0, // NumberofPowerCords;\r
164 0, // ContainedElementCount;\r
165 0, // ContainedElementRecordLength;\r
166 {\r
167 { 0 }\r
168 }, // ContainedElements[1];\r
169};\r
170CHAR8 *gSmbiosType3Strings[] = {\r
dff5a05b 171 "http://www.tianocore.org/edk2/",\r
f58ba9ed
JJ
172 "EmulatorPkg",\r
173 "Chassis Board Serial#",\r
174 "Chassis Board Asset Tag#",\r
79e4f2a5 175 NULL\r
f58ba9ed
JJ
176};\r
177\r
178SMBIOS_TABLE_TYPE8 gSmbiosType8Template1 = {\r
179 { EFI_SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION, sizeof (SMBIOS_TABLE_TYPE8), 0 },\r
180 0, // InternalReferenceDesignator String\r
181 PortConnectorTypeNone, // InternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
182 1, // ExternalReferenceDesignator String\r
183 PortConnectorTypeNone, // ExternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
184 PortTypeOther, // PortType; ///< The enumeration value from MISC_PORT_TYPE.\r
185};\r
a550d468 186CHAR8 *gSmbiosType8Strings1[] = {\r
f58ba9ed
JJ
187 "Mini DisplayPort",\r
188 NULL\r
189};\r
190\r
191SMBIOS_TABLE_TYPE8 gSmbiosType8Template2 = {\r
192 { EFI_SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION, sizeof (SMBIOS_TABLE_TYPE8), 0 },\r
193 0, // InternalReferenceDesignator String\r
194 PortConnectorTypeNone, // InternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
195 1, // ExternalReferenceDesignator String\r
196 PortConnectorTypeNone, // ExternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
197 PortTypeFireWire, // PortType; ///< The enumeration value from MISC_PORT_TYPE.\r
198};\r
a550d468 199CHAR8 *gSmbiosType8Strings2[] = {\r
f58ba9ed
JJ
200 "FireWire 800",\r
201 NULL\r
202};\r
203\r
f58ba9ed
JJ
204SMBIOS_TABLE_TYPE8 gSmbiosType8Template3 = {\r
205 { EFI_SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION, sizeof (SMBIOS_TABLE_TYPE8), 0 },\r
206 0, // InternalReferenceDesignator String\r
207 PortConnectorTypeNone, // InternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
208 1, // ExternalReferenceDesignator String\r
209 PortConnectorTypeRJ45, // ExternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
210 PortTypeNetworkPort, // PortType; ///< The enumeration value from MISC_PORT_TYPE.\r
211};\r
a550d468 212CHAR8 *gSmbiosType8Strings3[] = {\r
f58ba9ed
JJ
213 "Ethernet",\r
214 NULL\r
215};\r
216\r
217SMBIOS_TABLE_TYPE8 gSmbiosType8Template4 = {\r
218 { EFI_SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION, sizeof (SMBIOS_TABLE_TYPE8), 0 },\r
219 0, // InternalReferenceDesignator String\r
220 PortConnectorTypeNone, // InternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
221 1, // ExternalReferenceDesignator String\r
222 PortConnectorTypeUsb, // ExternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
223 PortTypeUsb, // PortType; ///< The enumeration value from MISC_PORT_TYPE.\r
224};\r
a550d468 225CHAR8 *gSmbiosType8Strings4[] = {\r
f58ba9ed
JJ
226 "USB0",\r
227 NULL\r
228};\r
229\r
230SMBIOS_TABLE_TYPE8 gSmbiosType8Template5 = {\r
231 { EFI_SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION, sizeof (SMBIOS_TABLE_TYPE8), 0 },\r
232 0, // InternalReferenceDesignator String\r
233 PortConnectorTypeNone, // InternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
234 1, // ExternalReferenceDesignator String\r
235 PortConnectorTypeUsb, // ExternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
236 PortTypeUsb, // PortType; ///< The enumeration value from MISC_PORT_TYPE.\r
237};\r
a550d468 238CHAR8 *gSmbiosType8Strings5[] = {\r
f58ba9ed
JJ
239 "USB1",\r
240 NULL\r
241};\r
242\r
243SMBIOS_TABLE_TYPE8 gSmbiosType8Template6 = {\r
244 { EFI_SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION, sizeof (SMBIOS_TABLE_TYPE8), 0 },\r
245 0, // InternalReferenceDesignator String\r
246 PortConnectorTypeNone, // InternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
247 1, // ExternalReferenceDesignator String\r
248 PortConnectorTypeUsb, // ExternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
249 PortTypeUsb, // PortType; ///< The enumeration value from MISC_PORT_TYPE.\r
250};\r
a550d468 251CHAR8 *gSmbiosType8Strings6[] = {\r
f58ba9ed
JJ
252 "USB2",\r
253 NULL\r
254};\r
255\r
256SMBIOS_TABLE_TYPE8 gSmbiosType8Template7 = {\r
257 { EFI_SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION, sizeof (SMBIOS_TABLE_TYPE8), 0 },\r
258 0, // InternalReferenceDesignator String\r
259 PortConnectorTypeNone, // InternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
260 1, // ExternalReferenceDesignator String\r
261 PortConnectorTypeUsb, // ExternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
262 PortTypeUsb, // PortType; ///< The enumeration value from MISC_PORT_TYPE.\r
263};\r
a550d468 264CHAR8 *gSmbiosType8Strings7[] = {\r
f58ba9ed
JJ
265 "USB3",\r
266 NULL\r
267};\r
268\r
269SMBIOS_TABLE_TYPE8 gSmbiosType8Template8 = {\r
270 { EFI_SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION, sizeof (SMBIOS_TABLE_TYPE8), 0 },\r
a550d468
MK
271 0, // InternalReferenceDesignator String\r
272 PortConnectorTypeNone, // InternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
273 1, // ExternalReferenceDesignator String\r
f58ba9ed
JJ
274 PortConnectorTypeHeadPhoneMiniJack, // ExternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
275 PortTypeAudioPort, // PortType; ///< The enumeration value from MISC_PORT_TYPE.\r
276};\r
a550d468 277CHAR8 *gSmbiosType8Strings8[] = {\r
f58ba9ed
JJ
278 "Audio Line In",\r
279 NULL\r
280};\r
281\r
282SMBIOS_TABLE_TYPE8 gSmbiosType8Template9 = {\r
283 { EFI_SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION, sizeof (SMBIOS_TABLE_TYPE8), 0 },\r
a550d468
MK
284 0, // InternalReferenceDesignator String\r
285 PortConnectorTypeNone, // InternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
286 1, // ExternalReferenceDesignator String\r
f58ba9ed
JJ
287 PortConnectorTypeHeadPhoneMiniJack, // ExternalConnectorType; ///< The enumeration value from MISC_PORT_CONNECTOR_TYPE.\r
288 PortTypeAudioPort, // PortType; ///< The enumeration value from MISC_PORT_TYPE.\r
289};\r
a550d468 290CHAR8 *gSmbiosType8Strings9[] = {\r
f58ba9ed
JJ
291 "Audio Line Out",\r
292 NULL\r
293};\r
294\r
295SMBIOS_TABLE_TYPE9 gSmbiosType9Template = {\r
296 { EFI_SMBIOS_TYPE_SYSTEM_SLOTS, sizeof (SMBIOS_TABLE_TYPE9), 0 },\r
a550d468
MK
297 1, // SlotDesignation String\r
298 SlotTypeOther, // SlotType; ///< The enumeration value from MISC_SLOT_TYPE.\r
299 SlotDataBusWidthOther, // SlotDataBusWidth; ///< The enumeration value from MISC_SLOT_DATA_BUS_WIDTH.\r
f58ba9ed 300 SlotUsageAvailable, // CurrentUsage; ///< The enumeration value from MISC_SLOT_USAGE.\r
a550d468
MK
301 SlotLengthOther, // SlotLength; ///< The enumeration value from MISC_SLOT_LENGTH.\r
302 0, // SlotID;\r
f58ba9ed 303 { // SlotCharacteristics1;\r
a550d468
MK
304 1, // CharacteristicsUnknown :1;\r
305 0, // Provides50Volts :1;\r
306 0, // Provides33Volts :1;\r
307 0, // SharedSlot :1;\r
308 0, // PcCard16Supported :1;\r
309 0, // CardBusSupported :1;\r
310 0, // ZoomVideoSupported :1;\r
311 0, // ModemRingResumeSupported:1;\r
f58ba9ed
JJ
312 },\r
313 { // SlotCharacteristics2;\r
314 0, // PmeSignalSupported :1;\r
315 0, // HotPlugDevicesSupported :1;\r
316 0, // SmbusSignalSupported :1;\r
317 0, // Reserved :5; ///< Set to 0.\r
318 },\r
319 0, // SegmentGroupNum;\r
320 0, // BusNum;\r
321 0, // DevFuncNum;\r
322};\r
a550d468 323CHAR8 *gSmbiosType9Strings[] = {\r
f58ba9ed
JJ
324 "SD Card",\r
325 NULL\r
326};\r
327\r
a550d468 328SMBIOS_TABLE_TYPE11 gSmbiosType11Template = {\r
f58ba9ed
JJ
329 { EFI_SMBIOS_TYPE_OEM_STRINGS, sizeof (SMBIOS_TABLE_TYPE11), 0 },\r
330 1 // StringCount\r
331};\r
a550d468 332CHAR8 *gSmbiosType11Strings[] = {\r
dff5a05b 333 "https://svn.code.sf.net/p/edk2/code/trunk/edk2/EmulatorPkg/",\r
f58ba9ed
JJ
334 NULL\r
335};\r
336\r
a550d468 337SMBIOS_TABLE_TYPE12 gSmbiosType12Template = {\r
f58ba9ed
JJ
338 { EFI_SMBIOS_TYPE_SYSTEM_CONFIGURATION_OPTIONS, sizeof (SMBIOS_TABLE_TYPE12), 0 },\r
339 1 // StringCount\r
340};\r
a550d468 341CHAR8 *gSmbiosType12Strings[] = {\r
dff5a05b 342 "https://svn.code.sf.net/p/edk2/code/trunk/edk2/EmulatorPkg/EmulatorPkg.dsc",\r
f58ba9ed
JJ
343 NULL\r
344};\r
345\r
a550d468 346SMBIOS_TABLE_TYPE16 gSmbiosType16Template = {\r
f58ba9ed
JJ
347 { EFI_SMBIOS_TYPE_PHYSICAL_MEMORY_ARRAY, sizeof (SMBIOS_TABLE_TYPE16), 0 },\r
348 MemoryArrayLocationSystemBoard, // Location; ///< The enumeration value from MEMORY_ARRAY_LOCATION.\r
349 MemoryArrayUseSystemMemory, // Use; ///< The enumeration value from MEMORY_ARRAY_USE.\r
350 MemoryErrorCorrectionUnknown, // MemoryErrorCorrection; ///< The enumeration value from MEMORY_ERROR_CORRECTION.\r
351 0x80000000, // MaximumCapacity;\r
352 0xFFFE, // MemoryErrorInformationHandle;\r
353 1, // NumberOfMemoryDevices;\r
354 0x3fffffffffffffffULL, // ExtendedMaximumCapacity;\r
355};\r
356\r
a550d468 357SMBIOS_TABLE_TYPE17 gSmbiosType17Template = {\r
f58ba9ed 358 { EFI_SMBIOS_TYPE_MEMORY_DEVICE, sizeof (SMBIOS_TABLE_TYPE17), 0 },\r
a550d468
MK
359 0, // MemoryArrayHandle;\r
360 0xFFFE, // MemoryErrorInformationHandle;\r
361 0xFFFF, // TotalWidth;\r
362 0xFFFF, // DataWidth;\r
363 0xFFFF, // Size;\r
f58ba9ed 364 MemoryFormFactorUnknown, // FormFactor; ///< The enumeration value from MEMORY_FORM_FACTOR.\r
a550d468
MK
365 0xff, // DeviceSet;\r
366 1, // DeviceLocator String\r
367 2, // BankLocator String\r
368 MemoryTypeDram, // MemoryType; ///< The enumeration value from MEMORY_DEVICE_TYPE.\r
369 { // TypeDetail;\r
f58ba9ed
JJ
370 0, // Reserved :1;\r
371 0, // Other :1;\r
372 1, // Unknown :1;\r
373 0, // FastPaged :1;\r
374 0, // StaticColumn :1;\r
375 0, // PseudoStatic :1;\r
376 0, // Rambus :1;\r
377 0, // Synchronous :1;\r
378 0, // Cmos :1;\r
379 0, // Edo :1;\r
380 0, // WindowDram :1;\r
381 0, // CacheDram :1;\r
382 0, // Nonvolatile :1;\r
383 0, // Registered :1;\r
384 0, // Unbuffered :1;\r
385 0, // Reserved1 :1;\r
386 },\r
387 0, // Speed;\r
388 3, // Manufacturer String\r
389 0, // SerialNumber String\r
390 0, // AssetTag String\r
391 0, // PartNumber String\r
392 0, // Attributes;\r
393 0, // ExtendedSize;\r
394 0, // ConfiguredMemoryClockSpeed;\r
395};\r
a550d468 396CHAR8 *gSmbiosType17Strings[] = {\r
f58ba9ed
JJ
397 "OS Virtual Memory",\r
398 "malloc",\r
399 "OSV",\r
400 NULL\r
401};\r
402\r
a550d468 403SMBIOS_TABLE_TYPE23 gSmbiosType23Template = {\r
f58ba9ed
JJ
404 { EFI_SMBIOS_TYPE_SYSTEM_BOOT_INFORMATION, sizeof (SMBIOS_TABLE_TYPE23), 0 },\r
405 0, // Capabilities;\r
406 0, // ResetCount;\r
407 0, // ResetLimit;\r
408 0, // TimerInterval;\r
409 0 // Timeout;\r
410};\r
411\r
a550d468 412SMBIOS_TABLE_TYPE32 gSmbiosType32Template = {\r
f58ba9ed 413 { EFI_SMBIOS_TYPE_SYSTEM_BOOT_INFORMATION, sizeof (SMBIOS_TABLE_TYPE32), 0 },\r
a550d468
MK
414 { 0, 0, 0, 0, 0, 0}, // Reserved[6];\r
415 BootInformationStatusNoError // BootStatus\r
f58ba9ed
JJ
416};\r
417\r
a550d468
MK
418SMBIOS_TEMPLATE_ENTRY gSmbiosTemplate[] = {\r
419 { (SMBIOS_STRUCTURE *)&gSmbiosType0Template, gSmbiosType0Strings },\r
420 { (SMBIOS_STRUCTURE *)&gSmbiosType1Template, gSmbiosType1Strings },\r
421 { (SMBIOS_STRUCTURE *)&gSmbiosType2Template, gSmbiosType2Strings },\r
422 { (SMBIOS_STRUCTURE *)&gSmbiosType3Template, gSmbiosType3Strings },\r
423 { (SMBIOS_STRUCTURE *)&gSmbiosType8Template1, gSmbiosType8Strings1 },\r
424 { (SMBIOS_STRUCTURE *)&gSmbiosType8Template2, gSmbiosType8Strings2 },\r
425 { (SMBIOS_STRUCTURE *)&gSmbiosType8Template3, gSmbiosType8Strings3 },\r
426 { (SMBIOS_STRUCTURE *)&gSmbiosType8Template4, gSmbiosType8Strings4 },\r
427 { (SMBIOS_STRUCTURE *)&gSmbiosType8Template5, gSmbiosType8Strings5 },\r
428 { (SMBIOS_STRUCTURE *)&gSmbiosType8Template6, gSmbiosType8Strings6 },\r
429 { (SMBIOS_STRUCTURE *)&gSmbiosType8Template7, gSmbiosType8Strings7 },\r
430 { (SMBIOS_STRUCTURE *)&gSmbiosType8Template8, gSmbiosType8Strings8 },\r
431 { (SMBIOS_STRUCTURE *)&gSmbiosType8Template9, gSmbiosType8Strings9 },\r
432 { (SMBIOS_STRUCTURE *)&gSmbiosType9Template, gSmbiosType9Strings },\r
433 { (SMBIOS_STRUCTURE *)&gSmbiosType11Template, gSmbiosType11Strings },\r
434 { (SMBIOS_STRUCTURE *)&gSmbiosType12Template, gSmbiosType12Strings },\r
435 { (SMBIOS_STRUCTURE *)&gSmbiosType16Template, NULL },\r
436 { (SMBIOS_STRUCTURE *)&gSmbiosType17Template, gSmbiosType17Strings },\r
437 { (SMBIOS_STRUCTURE *)&gSmbiosType23Template, NULL },\r
438 { (SMBIOS_STRUCTURE *)&gSmbiosType32Template, NULL },\r
439 { NULL, NULL }\r
f58ba9ed 440};\r