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