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