]> git.proxmox.com Git - mirror_edk2.git/blob - EdkCompatibilityPkg/Foundation/Include/IndustryStandard/Smbios.h
901bd52ea7179cca9b31202b41706deb8bd0a8da
[mirror_edk2.git] / EdkCompatibilityPkg / Foundation / Include / IndustryStandard / Smbios.h
1 /*++
2
3 Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11
12 Module Name:
13
14 Smbios.h
15
16 Abstract:
17
18 --*/
19
20 #ifndef _SMBIOS_TABLE_H_
21 #define _SMBIOS_TABLE_H_
22
23 #include "Tiano.h"
24
25 //
26 // Reference SMBIOS 2.6, chapter 3.1.2.
27 // For v2.1 and later, handle values in the range 0FF00h to 0FFFFh are reserved for
28 // use by this specification.
29 //
30 #define SMBIOS_HANDLE_RESERVED_BEGIN 0xFF00
31
32 //
33 // Reference SMBIOS 2.6, chapter 3.1.3
34 // Each text string is limited to 64 significant characters due to system MIF limitations
35 //
36 #define SMBIOS_STRING_MAX_LENGTH 64
37
38 //
39 // Inactive type is added from SMBIOS 2.2. Reference SMBIOS 2.6, chapter 3.3.43.
40 // Upper-level software that interprets the SMBIOS structure-table should bypass an
41 // Inactive structure just like a structure type that the software does not recognize.
42 //
43 #define SMBIOS_TYPE_INACTIVE 0x007E
44
45 //
46 // End-of-table type is added from SMBIOS 2.2. Reference SMBIOS 2.6, chapter 3.3.44.
47 // The end-of-table indicator is used in the last physical structure in a table
48 //
49 #define SMBIOS_TYPE_END_OF_TABLE 0x007F
50
51 #pragma pack(1)
52
53 typedef UINT8 SMBIOS_TABLE_STRING;
54
55 typedef struct {
56 UINT8 AnchorString[4];
57 UINT8 EntryPointStructureChecksum;
58 UINT8 EntryPointLength;
59 UINT8 MajorVersion;
60 UINT8 MinorVersion;
61 UINT16 MaxStructureSize;
62 UINT8 EntryPointRevision;
63 UINT8 FormattedArea[5];
64 UINT8 IntermediateAnchorString[5];
65 UINT8 IntermediateChecksum;
66 UINT16 TableLength;
67 UINT32 TableAddress;
68 UINT16 NumberOfSmbiosStructures;
69 UINT8 SmbiosBcdRevision;
70 } SMBIOS_TABLE_STRUCTURE;
71
72 typedef struct {
73 UINT8 Type;
74 UINT8 Length;
75 UINT16 Handle;
76 } SMBIOS_TABLE_HEADER;
77
78 typedef struct {
79 SMBIOS_TABLE_HEADER Hdr;
80 SMBIOS_TABLE_STRING Vendor;
81 SMBIOS_TABLE_STRING BiosVersion;
82 UINT16 BiosSegment;
83 SMBIOS_TABLE_STRING BiosReleaseDate;
84 UINT8 BiosSize;
85 UINT64 BiosCharacteristics;
86 UINT8 BIOSCharacteristicsExtensionBytes[2];
87 UINT8 SystemBiosMajorRelease;
88 UINT8 SystemBiosMinorRelease;
89 UINT8 EmbeddedControllerFirmwareMajorRelease;
90 UINT8 EmbeddedControllerFirmwareMinorRelease;
91 } SMBIOS_TABLE_TYPE0;
92
93 typedef struct {
94 SMBIOS_TABLE_HEADER Hdr;
95 SMBIOS_TABLE_STRING Manufacturer;
96 SMBIOS_TABLE_STRING ProductName;
97 SMBIOS_TABLE_STRING Version;
98 SMBIOS_TABLE_STRING SerialNumber;
99 EFI_GUID Uuid;
100 UINT8 WakeUpType;
101 SMBIOS_TABLE_STRING SKUNumber;
102 SMBIOS_TABLE_STRING Family;
103 } SMBIOS_TABLE_TYPE1;
104
105 typedef struct {
106 SMBIOS_TABLE_HEADER Hdr;
107 SMBIOS_TABLE_STRING Manufacturer;
108 SMBIOS_TABLE_STRING ProductName;
109 SMBIOS_TABLE_STRING Version;
110 SMBIOS_TABLE_STRING SerialNumber;
111 SMBIOS_TABLE_STRING AssetTag;
112 UINT8 FeatureFlag;
113 SMBIOS_TABLE_STRING LocationInChassis;
114 UINT16 ChassisHandle;
115 UINT8 BoardType;
116 UINT8 NumberOfContainedObjectHandles;
117 UINT16 ContainedObjectHandles[1];
118 } SMBIOS_TABLE_TYPE2;
119
120 typedef struct {
121 UINT8 ContainedElementType;
122 UINT8 ContainedElementMinimum;
123 UINT8 ContainedElementMaximum;
124 } CONTAINED_ELEMENT;
125
126 typedef struct {
127 SMBIOS_TABLE_HEADER Hdr;
128 SMBIOS_TABLE_STRING Manufacturer;
129 UINT8 Type;
130 SMBIOS_TABLE_STRING Version;
131 SMBIOS_TABLE_STRING SerialNumber;
132 SMBIOS_TABLE_STRING AssetTag;
133 UINT8 BootupState;
134 UINT8 PowerSupplyState;
135 UINT8 ThermalState;
136 UINT8 SecurityStatus;
137 UINT8 OemDefined[4];
138 UINT8 Height;
139 UINT8 NumberofPowerCords;
140 UINT8 ContainedElementCount;
141 UINT8 ContainedElementRecordLength;
142 CONTAINED_ELEMENT ContainedElements[1];
143 } SMBIOS_TABLE_TYPE3;
144
145 typedef struct {
146 SMBIOS_TABLE_HEADER Hdr;
147 UINT8 Socket;
148 UINT8 ProcessorType;
149 UINT8 ProcessorFamily;
150 SMBIOS_TABLE_STRING ProcessorManufacture;
151 UINT8 ProcessorId[8];
152 SMBIOS_TABLE_STRING ProcessorVersion;
153 UINT8 Voltage;
154 UINT16 ExternalClock;
155 UINT16 MaxSpeed;
156 UINT16 CurrentSpeed;
157 UINT8 Status;
158 UINT8 ProcessorUpgrade;
159 UINT16 L1CacheHandle;
160 UINT16 L2CacheHandle;
161 UINT16 L3CacheHandle;
162 SMBIOS_TABLE_STRING SerialNumber;
163 SMBIOS_TABLE_STRING AssetTag;
164 SMBIOS_TABLE_STRING PartNumber;
165 //
166 // Add for smbios 2.5
167 //
168 UINT8 CoreCount;
169 UINT8 EnabledCoreCount;
170 UINT8 ThreadCount;
171 UINT16 ProcessorCharacteristics;
172 //
173 // Add for smbios 2.6
174 //
175 UINT16 ProcessorFamily2;
176 } SMBIOS_TABLE_TYPE4;
177
178 typedef struct {
179 SMBIOS_TABLE_HEADER Hdr;
180 UINT8 ErrDetectMethod;
181 UINT8 ErrCorrectCapability;
182 UINT8 SupportInterleave;
183 UINT8 CurrentInterleave;
184 UINT8 MaxMemoryModuleSize;
185 UINT16 SupportSpeed;
186 UINT16 SupportMemoryType;
187 UINT8 MemoryModuleVoltage;
188 UINT8 AssociatedMemorySlotNum;
189 UINT16 MemoryModuleConfigHandles[1];
190 // UINT8 EnableErrCorrectCapabilities;
191 } SMBIOS_TABLE_TYPE5;
192
193 typedef struct {
194 SMBIOS_TABLE_HEADER Hdr;
195 SMBIOS_TABLE_STRING SocketDesignation;
196 UINT8 BankConnections;
197 UINT8 CurrentSpeed;
198 UINT16 CurrentMemoryType;
199 UINT8 InstalledSize;
200 UINT8 EnabledSize;
201 UINT8 ErrorStatus;
202 } SMBIOS_TABLE_TYPE6;
203
204 typedef struct {
205 SMBIOS_TABLE_HEADER Hdr;
206 SMBIOS_TABLE_STRING SocketDesignation;
207 UINT16 CacheConfiguration;
208 UINT16 MaximumCacheSize;
209 UINT16 InstalledSize;
210 UINT16 SupportedSRAMType;
211 UINT16 CurrentSRAMType;
212 UINT8 CacheSpeed;
213 UINT8 ErrorCorrectionType;
214 UINT8 SystemCacheType;
215 UINT8 Associativity;
216 } SMBIOS_TABLE_TYPE7;
217
218 typedef struct {
219 SMBIOS_TABLE_HEADER Hdr;
220 SMBIOS_TABLE_STRING InternalReferenceDesignator;
221 UINT8 InternalConnectorType;
222 SMBIOS_TABLE_STRING ExternalReferenceDesignator;
223 UINT8 ExternalConnectorType;
224 UINT8 PortType;
225 } SMBIOS_TABLE_TYPE8;
226
227 typedef struct {
228 SMBIOS_TABLE_HEADER Hdr;
229 SMBIOS_TABLE_STRING SlotDesignation;
230 UINT8 SlotType;
231 UINT8 SlotDataBusWidth;
232 UINT8 CurrentUsage;
233 UINT8 SlotLength;
234 UINT16 SlotID;
235 UINT8 SlotCharacteristics1;
236 UINT8 SlotCharacteristics2;
237 //
238 // Add for smbios 2.6
239 //
240 UINT16 SegmentGroupNum;
241 UINT8 BusNum;
242 UINT8 DevFuncNum;
243 } SMBIOS_TABLE_TYPE9;
244
245 typedef struct {
246 UINT8 DeviceType;
247 SMBIOS_TABLE_STRING DescriptionString;
248 } DEVICE_STRUCT;
249
250 typedef struct {
251 SMBIOS_TABLE_HEADER Hdr;
252 DEVICE_STRUCT Device[1];
253 } SMBIOS_TABLE_TYPE10;
254
255 typedef struct {
256 SMBIOS_TABLE_HEADER Hdr;
257 UINT8 StringCount;
258 } SMBIOS_TABLE_TYPE11;
259
260 typedef struct {
261 SMBIOS_TABLE_HEADER Hdr;
262 UINT8 StringCount;
263 } SMBIOS_TABLE_TYPE12;
264
265 typedef struct {
266 SMBIOS_TABLE_HEADER Hdr;
267 UINT8 InstallableLanguages;
268 UINT8 Flags;
269 UINT8 reserved[15];
270 SMBIOS_TABLE_STRING CurrentLanguages;
271 } SMBIOS_TABLE_TYPE13;
272
273 typedef struct {
274 UINT8 ItemType;
275 UINT16 ItemHandle;
276 } GROUP_STRUCT;
277
278 typedef struct {
279 SMBIOS_TABLE_HEADER Hdr;
280 SMBIOS_TABLE_STRING GroupName;
281 GROUP_STRUCT Group[1];
282 } SMBIOS_TABLE_TYPE14;
283
284 typedef struct {
285 UINT8 LogType;
286 UINT8 DataFormatType;
287 } EVENT_LOG_TYPE;
288
289 typedef struct {
290 SMBIOS_TABLE_HEADER Hdr;
291 UINT16 LogAreaLength;
292 UINT16 LogHeaderStartOffset;
293 UINT16 LogDataStartOffset;
294 UINT8 AccessMethod;
295 UINT8 LogStatus;
296 UINT32 LogChangeToken;
297 UINT32 AccessMethodAddress;
298 UINT8 LogHeaderFormat;
299 UINT8 NumberOfSupportedLogTypeDescriptors;
300 UINT8 LengthOfLogTypeDescriptor;
301 EVENT_LOG_TYPE EventLogTypeDescriptors[1];
302 } SMBIOS_TABLE_TYPE15;
303
304 typedef struct {
305 SMBIOS_TABLE_HEADER Hdr;
306 UINT8 Location;
307 UINT8 Use;
308 UINT8 MemoryErrorCorrection;
309 UINT32 MaximumCapacity;
310 UINT16 MemoryErrorInformationHandle;
311 UINT16 NumberOfMemoryDevices;
312 } SMBIOS_TABLE_TYPE16;
313
314 typedef struct {
315 SMBIOS_TABLE_HEADER Hdr;
316 UINT16 MemoryArrayHandle;
317 UINT16 MemoryErrorInformationHandle;
318 UINT16 TotalWidth;
319 UINT16 DataWidth;
320 UINT16 Size;
321 UINT8 FormFactor;
322 UINT8 DeviceSet;
323 SMBIOS_TABLE_STRING DeviceLocator;
324 SMBIOS_TABLE_STRING BankLocator;
325 UINT8 MemoryType;
326 UINT16 TypeDetail;
327 UINT16 Speed;
328 SMBIOS_TABLE_STRING Manufacturer;
329 SMBIOS_TABLE_STRING SerialNumber;
330 SMBIOS_TABLE_STRING AssetTag;
331 SMBIOS_TABLE_STRING PartNumber;
332 //
333 // Add for smbios 2.6
334 //
335 UINT8 Attributes;
336 } SMBIOS_TABLE_TYPE17;
337
338 typedef struct {
339 SMBIOS_TABLE_HEADER Hdr;
340 UINT8 ErrorType;
341 UINT8 ErrorGranularity;
342 UINT8 ErrorOperation;
343 UINT32 VendorSyndrome;
344 UINT32 MemoryArrayErrorAddress;
345 UINT32 DeviceErrorAddress;
346 UINT32 ErrorResolution;
347 } SMBIOS_TABLE_TYPE18;
348
349 typedef struct {
350 SMBIOS_TABLE_HEADER Hdr;
351 UINT32 StartingAddress;
352 UINT32 EndingAddress;
353 UINT16 MemoryArrayHandle;
354 UINT8 PartitionWidth;
355 } SMBIOS_TABLE_TYPE19;
356
357 typedef struct {
358 SMBIOS_TABLE_HEADER Hdr;
359 UINT32 StartingAddress;
360 UINT32 EndingAddress;
361 UINT16 MemoryDeviceHandle;
362 UINT16 MemoryArrayMappedAddressHandle;
363 UINT8 PartitionRowPosition;
364 UINT8 InterleavePosition;
365 UINT8 InterleavedDataDepth;
366 } SMBIOS_TABLE_TYPE20;
367
368 typedef struct {
369 SMBIOS_TABLE_HEADER Hdr;
370 UINT8 Type;
371 UINT8 Interface;
372 UINT8 NumberOfButtons;
373 } SMBIOS_TABLE_TYPE21;
374
375 typedef struct {
376 SMBIOS_TABLE_HEADER Hdr;
377 SMBIOS_TABLE_STRING Location;
378 SMBIOS_TABLE_STRING Manufacturer;
379 SMBIOS_TABLE_STRING ManufactureDate;
380 SMBIOS_TABLE_STRING SerialNumber;
381 SMBIOS_TABLE_STRING DeviceName;
382 UINT8 DeviceChemistry;
383 UINT16 DeviceCapacity;
384 UINT16 DesignVoltage;
385 SMBIOS_TABLE_STRING SBDSVersionNumber;
386 UINT8 MaximumErrorInBatteryData;
387 UINT16 SBDSSerialNumber;
388 UINT16 SBDSManufactureDate;
389 SMBIOS_TABLE_STRING SBDSDeviceChemistry;
390 UINT8 DesignCapacityMultiplier;
391 UINT32 OEMSpecific;
392 } SMBIOS_TABLE_TYPE22;
393
394 typedef struct {
395 SMBIOS_TABLE_HEADER Hdr;
396 UINT8 Capabilities;
397 UINT16 ResetCount;
398 UINT16 ResetLimit;
399 UINT16 TimerInterval;
400 UINT16 Timeout;
401 } SMBIOS_TABLE_TYPE23;
402
403 typedef struct {
404 SMBIOS_TABLE_HEADER Hdr;
405 UINT8 HardwareSecuritySettings;
406 } SMBIOS_TABLE_TYPE24;
407
408 typedef struct {
409 SMBIOS_TABLE_HEADER Hdr;
410 UINT8 NextScheduledPowerOnMonth;
411 UINT8 NextScheduledPowerOnDayOfMonth;
412 UINT8 NextScheduledPowerOnHour;
413 UINT8 NextScheduledPowerOnMinute;
414 UINT8 NextScheduledPowerOnSecond;
415 } SMBIOS_TABLE_TYPE25;
416
417 typedef struct {
418 SMBIOS_TABLE_HEADER Hdr;
419 SMBIOS_TABLE_STRING Description;
420 UINT8 LocationAndStatus;
421 UINT16 MaximumValue;
422 UINT16 MinimumValue;
423 UINT16 Resolution;
424 UINT16 Tolerance;
425 UINT16 Accuracy;
426 UINT32 OEMDefined;
427 UINT16 NominalValue;
428 } SMBIOS_TABLE_TYPE26;
429
430 typedef struct {
431 SMBIOS_TABLE_HEADER Hdr;
432 UINT16 TemperatureProbeHandle;
433 UINT8 DeviceTypeAndStatus;
434 UINT8 CoolingUnitGroup;
435 UINT32 OEMDefined;
436 UINT16 NominalSpeed;
437 } SMBIOS_TABLE_TYPE27;
438
439 typedef struct {
440 SMBIOS_TABLE_HEADER Hdr;
441 SMBIOS_TABLE_STRING Description;
442 UINT8 LocationAndStatus;
443 UINT16 MaximumValue;
444 UINT16 MinimumValue;
445 UINT16 Resolution;
446 UINT16 Tolerance;
447 UINT16 Accuracy;
448 UINT32 OEMDefined;
449 UINT16 NominalValue;
450 } SMBIOS_TABLE_TYPE28;
451
452 typedef struct {
453 SMBIOS_TABLE_HEADER Hdr;
454 SMBIOS_TABLE_STRING Description;
455 UINT8 LocationAndStatus;
456 UINT16 MaximumValue;
457 UINT16 MinimumValue;
458 UINT16 Resolution;
459 UINT16 Tolerance;
460 UINT16 Accuracy;
461 UINT32 OEMDefined;
462 UINT16 NominalValue;
463 } SMBIOS_TABLE_TYPE29;
464
465 typedef struct {
466 SMBIOS_TABLE_HEADER Hdr;
467 SMBIOS_TABLE_STRING ManufacturerName;
468 UINT8 Connections;
469 } SMBIOS_TABLE_TYPE30;
470
471 typedef struct {
472 SMBIOS_TABLE_HEADER Hdr;
473 UINT8 Checksum;
474 UINT8 Reserved1;
475 UINT16 Reserved2;
476 UINT32 BisEntry16;
477 UINT32 BisEntry32;
478 UINT64 Reserved3;
479 UINT32 Reserved4;
480 } SMBIOS_TABLE_TYPE31;
481
482 typedef struct {
483 SMBIOS_TABLE_HEADER Hdr;
484 UINT8 Reserved[6];
485 UINT8 BootStatus[1];
486 } SMBIOS_TABLE_TYPE32;
487
488 typedef struct {
489 SMBIOS_TABLE_HEADER Hdr;
490 UINT8 ErrorType;
491 UINT8 ErrorGranularity;
492 UINT8 ErrorOperation;
493 UINT32 VendorSyndrome;
494 UINT64 MemoryArrayErrorAddress;
495 UINT64 DeviceErrorAddress;
496 UINT32 ErrorResolution;
497 } SMBIOS_TABLE_TYPE33;
498
499 typedef struct {
500 SMBIOS_TABLE_HEADER Hdr;
501 SMBIOS_TABLE_STRING Description;
502 UINT8 Type;
503 UINT32 Address;
504 UINT8 AddressType;
505 } SMBIOS_TABLE_TYPE34;
506
507 typedef struct {
508 SMBIOS_TABLE_HEADER Hdr;
509 SMBIOS_TABLE_STRING Description;
510 UINT16 ManagementDeviceHandle;
511 UINT16 ComponentHandle;
512 UINT16 ThresholdHandle;
513 } SMBIOS_TABLE_TYPE35;
514
515 typedef struct {
516 SMBIOS_TABLE_HEADER Hdr;
517 UINT16 LowerThresholdNonCritical;
518 UINT16 UpperThresholdNonCritical;
519 UINT16 LowerThresholdCritical;
520 UINT16 UpperThresholdCritical;
521 UINT16 LowerThresholdNonRecoverable;
522 UINT16 UpperThresholdNonRecoverable;
523 } SMBIOS_TABLE_TYPE36;
524
525 typedef struct {
526 UINT8 DeviceLoad;
527 UINT16 DeviceHandle;
528 } MEMORY_DEVICE;
529
530 typedef struct {
531 SMBIOS_TABLE_HEADER Hdr;
532 UINT8 ChannelType;
533 UINT8 MaximumChannelLoad;
534 UINT8 MemoryDeviceCount;
535 MEMORY_DEVICE MemoryDevice[1];
536 } SMBIOS_TABLE_TYPE37;
537
538 typedef struct {
539 SMBIOS_TABLE_HEADER Hdr;
540 UINT8 InterfaceType;
541 UINT8 IPMISpecificationRevision;
542 UINT8 I2CSlaveAddress;
543 UINT8 NVStorageDeviceAddress;
544 UINT64 BaseAddress;
545 UINT8 BaseAddressModifier_InterruptInfo;
546 UINT8 InterruptNumber;
547 } SMBIOS_TABLE_TYPE38;
548
549 typedef struct {
550 SMBIOS_TABLE_HEADER Hdr;
551 UINT8 PowerUnitGroup;
552 SMBIOS_TABLE_STRING Location;
553 SMBIOS_TABLE_STRING DeviceName;
554 SMBIOS_TABLE_STRING Manufacturer;
555 SMBIOS_TABLE_STRING SerialNumber;
556 SMBIOS_TABLE_STRING AssetTagNumber;
557 SMBIOS_TABLE_STRING ModelPartNumber;
558 SMBIOS_TABLE_STRING RevisionLevel;
559 UINT16 MaxPowerCapacity;
560 UINT16 PowerSupplyCharacteristics;
561 UINT16 InputVoltageProbeHandle;
562 UINT16 CoolingDeviceHandle;
563 UINT16 InputCurrentProbeHandle;
564 } SMBIOS_TABLE_TYPE39;
565
566 //
567 // Add type 40 and type 41 for smbios 2.6
568 //
569 typedef struct {
570 UINT8 EntryLength;
571 UINT16 ReferencedHandle;
572 UINT8 ReferencedOffset;
573 SMBIOS_TABLE_STRING EntryString;
574 UINT8 Value[1];
575 }ADDITIONAL_INFORMATION_ENTRY;
576
577 typedef struct {
578 SMBIOS_TABLE_HEADER Hdr;
579 UINT8 NumberOfAdditionalInformationEntries;
580 ADDITIONAL_INFORMATION_ENTRY AdditionalInfoEntries[1];
581 } SMBIOS_TABLE_TYPE40;
582
583 typedef struct {
584 SMBIOS_TABLE_HEADER Hdr;
585 SMBIOS_TABLE_STRING ReferenceDesignation;
586 UINT8 DeviceType;
587 UINT8 DeviceTypeInstance;
588 UINT16 SegmentGroupNum;
589 UINT8 BusNum;
590 UINT8 DevFuncNum;
591 } SMBIOS_TABLE_TYPE41;
592
593 typedef struct {
594 SMBIOS_TABLE_HEADER Hdr;
595 } SMBIOS_TABLE_TYPE126;
596
597 typedef struct {
598 SMBIOS_TABLE_HEADER Hdr;
599 } SMBIOS_TABLE_TYPE127;
600
601 typedef union {
602 SMBIOS_TABLE_HEADER *Hdr;
603 SMBIOS_TABLE_TYPE0 *Type0;
604 SMBIOS_TABLE_TYPE1 *Type1;
605 SMBIOS_TABLE_TYPE2 *Type2;
606 SMBIOS_TABLE_TYPE3 *Type3;
607 SMBIOS_TABLE_TYPE4 *Type4;
608 SMBIOS_TABLE_TYPE5 *Type5;
609 SMBIOS_TABLE_TYPE6 *Type6;
610 SMBIOS_TABLE_TYPE7 *Type7;
611 SMBIOS_TABLE_TYPE8 *Type8;
612 SMBIOS_TABLE_TYPE9 *Type9;
613 SMBIOS_TABLE_TYPE10 *Type10;
614 SMBIOS_TABLE_TYPE11 *Type11;
615 SMBIOS_TABLE_TYPE12 *Type12;
616 SMBIOS_TABLE_TYPE13 *Type13;
617 SMBIOS_TABLE_TYPE14 *Type14;
618 SMBIOS_TABLE_TYPE15 *Type15;
619 SMBIOS_TABLE_TYPE16 *Type16;
620 SMBIOS_TABLE_TYPE17 *Type17;
621 SMBIOS_TABLE_TYPE18 *Type18;
622 SMBIOS_TABLE_TYPE19 *Type19;
623 SMBIOS_TABLE_TYPE20 *Type20;
624 SMBIOS_TABLE_TYPE21 *Type21;
625 SMBIOS_TABLE_TYPE22 *Type22;
626 SMBIOS_TABLE_TYPE23 *Type23;
627 SMBIOS_TABLE_TYPE24 *Type24;
628 SMBIOS_TABLE_TYPE25 *Type25;
629 SMBIOS_TABLE_TYPE26 *Type26;
630 SMBIOS_TABLE_TYPE27 *Type27;
631 SMBIOS_TABLE_TYPE28 *Type28;
632 SMBIOS_TABLE_TYPE29 *Type29;
633 SMBIOS_TABLE_TYPE30 *Type30;
634 SMBIOS_TABLE_TYPE31 *Type31;
635 SMBIOS_TABLE_TYPE32 *Type32;
636 SMBIOS_TABLE_TYPE33 *Type33;
637 SMBIOS_TABLE_TYPE34 *Type34;
638 SMBIOS_TABLE_TYPE35 *Type35;
639 SMBIOS_TABLE_TYPE36 *Type36;
640 SMBIOS_TABLE_TYPE37 *Type37;
641 SMBIOS_TABLE_TYPE38 *Type38;
642 SMBIOS_TABLE_TYPE39 *Type39;
643 SMBIOS_TABLE_TYPE40 *Type40;
644 SMBIOS_TABLE_TYPE41 *Type41;
645 SMBIOS_TABLE_TYPE126 *Type126;
646 SMBIOS_TABLE_TYPE127 *Type127;
647 UINT8 *Raw;
648 } SMBIOS_STRUCTURE_POINTER;
649
650 #pragma pack()
651
652 #endif