15#ifndef __SMBIOS_STANDARD_H__
16#define __SMBIOS_STANDARD_H__
23#define SMBIOS_HANDLE_RESERVED_BEGIN 0xFF00
31#define SMBIOS_HANDLE_PI_RESERVED 0xFFFE
39#define SMBIOS_HANDLE_INVALID 0xFFFF
47#define SMBIOS_STRING_MAX_LENGTH 64
54#define SMBIOS_TABLE_MAX_LENGTH 0xFFFF
59#define SMBIOS_3_0_TABLE_MAX_LENGTH 0xFFFFFFFF
66#define SMBIOS_ANCHOR_STRING "_SM_"
67#define SMBIOS_ANCHOR_STRING_LENGTH 4
75#define SMBIOS_3_0_ANCHOR_STRING "_SM3_"
76#define SMBIOS_3_0_ANCHOR_STRING_LENGTH 5
82#define SMBIOS_TYPE_BIOS_INFORMATION 0
83#define SMBIOS_TYPE_SYSTEM_INFORMATION 1
84#define SMBIOS_TYPE_BASEBOARD_INFORMATION 2
85#define SMBIOS_TYPE_SYSTEM_ENCLOSURE 3
86#define SMBIOS_TYPE_PROCESSOR_INFORMATION 4
87#define SMBIOS_TYPE_MEMORY_CONTROLLER_INFORMATION 5
88#define SMBIOS_TYPE_MEMORY_MODULE_INFORMATON 6
89#define SMBIOS_TYPE_CACHE_INFORMATION 7
90#define SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION 8
91#define SMBIOS_TYPE_SYSTEM_SLOTS 9
92#define SMBIOS_TYPE_ONBOARD_DEVICE_INFORMATION 10
93#define SMBIOS_TYPE_OEM_STRINGS 11
94#define SMBIOS_TYPE_SYSTEM_CONFIGURATION_OPTIONS 12
95#define SMBIOS_TYPE_BIOS_LANGUAGE_INFORMATION 13
96#define SMBIOS_TYPE_GROUP_ASSOCIATIONS 14
97#define SMBIOS_TYPE_SYSTEM_EVENT_LOG 15
98#define SMBIOS_TYPE_PHYSICAL_MEMORY_ARRAY 16
99#define SMBIOS_TYPE_MEMORY_DEVICE 17
100#define SMBIOS_TYPE_32BIT_MEMORY_ERROR_INFORMATION 18
101#define SMBIOS_TYPE_MEMORY_ARRAY_MAPPED_ADDRESS 19
102#define SMBIOS_TYPE_MEMORY_DEVICE_MAPPED_ADDRESS 20
103#define SMBIOS_TYPE_BUILT_IN_POINTING_DEVICE 21
104#define SMBIOS_TYPE_PORTABLE_BATTERY 22
105#define SMBIOS_TYPE_SYSTEM_RESET 23
106#define SMBIOS_TYPE_HARDWARE_SECURITY 24
107#define SMBIOS_TYPE_SYSTEM_POWER_CONTROLS 25
108#define SMBIOS_TYPE_VOLTAGE_PROBE 26
109#define SMBIOS_TYPE_COOLING_DEVICE 27
110#define SMBIOS_TYPE_TEMPERATURE_PROBE 28
111#define SMBIOS_TYPE_ELECTRICAL_CURRENT_PROBE 29
112#define SMBIOS_TYPE_OUT_OF_BAND_REMOTE_ACCESS 30
113#define SMBIOS_TYPE_BOOT_INTEGRITY_SERVICE 31
114#define SMBIOS_TYPE_SYSTEM_BOOT_INFORMATION 32
115#define SMBIOS_TYPE_64BIT_MEMORY_ERROR_INFORMATION 33
116#define SMBIOS_TYPE_MANAGEMENT_DEVICE 34
117#define SMBIOS_TYPE_MANAGEMENT_DEVICE_COMPONENT 35
118#define SMBIOS_TYPE_MANAGEMENT_DEVICE_THRESHOLD_DATA 36
119#define SMBIOS_TYPE_MEMORY_CHANNEL 37
120#define SMBIOS_TYPE_IPMI_DEVICE_INFORMATION 38
121#define SMBIOS_TYPE_SYSTEM_POWER_SUPPLY 39
122#define SMBIOS_TYPE_ADDITIONAL_INFORMATION 40
123#define SMBIOS_TYPE_ONBOARD_DEVICES_EXTENDED_INFORMATION 41
124#define SMBIOS_TYPE_MANAGEMENT_CONTROLLER_HOST_INTERFACE 42
125#define SMBIOS_TYPE_TPM_DEVICE 43
126#define SMBIOS_TYPE_PROCESSOR_ADDITIONAL_INFORMATION 44
127#define SMBIOS_TYPE_FIRMWARE_INVENTORY_INFORMATION 45
128#define SMBIOS_TYPE_STRING_PROPERTY_INFORMATION 46
135#define SMBIOS_TYPE_INACTIVE 0x007E
141#define SMBIOS_TYPE_END_OF_TABLE 0x007F
143#define SMBIOS_OEM_BEGIN 128
144#define SMBIOS_OEM_END 255
169 UINT8 AnchorString[SMBIOS_ANCHOR_STRING_LENGTH];
170 UINT8 EntryPointStructureChecksum;
171 UINT8 EntryPointLength;
174 UINT16 MaxStructureSize;
175 UINT8 EntryPointRevision;
176 UINT8 FormattedArea[5];
177 UINT8 IntermediateAnchorString[5];
178 UINT8 IntermediateChecksum;
181 UINT16 NumberOfSmbiosStructures;
182 UINT8 SmbiosBcdRevision;
186 UINT8 AnchorString[SMBIOS_3_0_ANCHOR_STRING_LENGTH];
187 UINT8 EntryPointStructureChecksum;
188 UINT8 EntryPointLength;
192 UINT8 EntryPointRevision;
194 UINT32 TableMaximumSize;
227 UINT32 BiosCharacteristicsNotSupported : 1;
228 UINT32 IsaIsSupported : 1;
229 UINT32 McaIsSupported : 1;
230 UINT32 EisaIsSupported : 1;
231 UINT32 PciIsSupported : 1;
232 UINT32 PcmciaIsSupported : 1;
233 UINT32 PlugAndPlayIsSupported : 1;
234 UINT32 ApmIsSupported : 1;
235 UINT32 BiosIsUpgradable : 1;
236 UINT32 BiosShadowingAllowed : 1;
237 UINT32 VlVesaIsSupported : 1;
238 UINT32 EscdSupportIsAvailable : 1;
239 UINT32 BootFromCdIsSupported : 1;
240 UINT32 SelectableBootIsSupported : 1;
241 UINT32 RomBiosIsSocketed : 1;
242 UINT32 BootFromPcmciaIsSupported : 1;
243 UINT32 EDDSpecificationIsSupported : 1;
244 UINT32 JapaneseNecFloppyIsSupported : 1;
245 UINT32 JapaneseToshibaFloppyIsSupported : 1;
246 UINT32 Floppy525_360IsSupported : 1;
247 UINT32 Floppy525_12IsSupported : 1;
248 UINT32 Floppy35_720IsSupported : 1;
249 UINT32 Floppy35_288IsSupported : 1;
250 UINT32 PrintScreenIsSupported : 1;
251 UINT32 Keyboard8042IsSupported : 1;
252 UINT32 SerialIsSupported : 1;
253 UINT32 PrinterIsSupported : 1;
254 UINT32 CgaMonoIsSupported : 1;
266 UINT8 AcpiIsSupported : 1;
267 UINT8 UsbLegacyIsSupported : 1;
268 UINT8 AgpIsSupported : 1;
269 UINT8 I2OBootIsSupported : 1;
270 UINT8 Ls120BootIsSupported : 1;
271 UINT8 AtapiZipDriveBootIsSupported : 1;
272 UINT8 Boot1394IsSupported : 1;
273 UINT8 SmartBatteryIsSupported : 1;
282 UINT8 BiosBootSpecIsSupported : 1;
283 UINT8 FunctionKeyNetworkBootIsSupported : 1;
284 UINT8 TargetContentDistributionEnabled : 1;
285 UINT8 UefiSpecificationSupported : 1;
286 UINT8 VirtualMachineSupported : 1;
287 UINT8 ManufacturingModeSupported : 1;
288 UINT8 ManufacturingModeEnabled : 1;
289 UINT8 ExtensionByte2Reserved : 1;
319 UINT8 BIOSCharacteristicsExtensionBytes[2];
320 UINT8 SystemBiosMajorRelease;
321 UINT8 SystemBiosMinorRelease;
322 UINT8 EmbeddedControllerFirmwareMajorRelease;
323 UINT8 EmbeddedControllerFirmwareMinorRelease;
334 SystemWakeupTypeReserved = 0x00,
335 SystemWakeupTypeOther = 0x01,
336 SystemWakeupTypeUnknown = 0x02,
337 SystemWakeupTypeApmTimer = 0x03,
338 SystemWakeupTypeModemRing = 0x04,
339 SystemWakeupTypeLanRemote = 0x05,
340 SystemWakeupTypePowerSwitch = 0x06,
341 SystemWakeupTypePciPme = 0x07,
342 SystemWakeupTypeAcPowerRestored = 0x08
369 UINT8 Motherboard : 1;
370 UINT8 RequiresDaughterCard : 1;
372 UINT8 Replaceable : 1;
373 UINT8 HotSwappable : 1;
381 BaseBoardTypeUnknown = 0x1,
382 BaseBoardTypeOther = 0x2,
383 BaseBoardTypeServerBlade = 0x3,
384 BaseBoardTypeConnectivitySwitch = 0x4,
385 BaseBoardTypeSystemManagementModule = 0x5,
386 BaseBoardTypeProcessorModule = 0x6,
387 BaseBoardTypeIOModule = 0x7,
388 BaseBoardTypeMemoryModule = 0x8,
389 BaseBoardTypeDaughterBoard = 0x9,
390 BaseBoardTypeMotherBoard = 0xA,
391 BaseBoardTypeProcessorMemoryModule = 0xB,
392 BaseBoardTypeProcessorIOModule = 0xC,
393 BaseBoardTypeInterconnectBoard = 0xD
411 UINT16 ChassisHandle;
413 UINT8 NumberOfContainedObjectHandles;
414 UINT16 ContainedObjectHandles[1];
421 MiscChassisTypeOther = 0x01,
422 MiscChassisTypeUnknown = 0x02,
423 MiscChassisTypeDeskTop = 0x03,
424 MiscChassisTypeLowProfileDesktop = 0x04,
425 MiscChassisTypePizzaBox = 0x05,
426 MiscChassisTypeMiniTower = 0x06,
427 MiscChassisTypeTower = 0x07,
428 MiscChassisTypePortable = 0x08,
429 MiscChassisTypeLapTop = 0x09,
430 MiscChassisTypeNotebook = 0x0A,
431 MiscChassisTypeHandHeld = 0x0B,
432 MiscChassisTypeDockingStation = 0x0C,
433 MiscChassisTypeAllInOne = 0x0D,
434 MiscChassisTypeSubNotebook = 0x0E,
435 MiscChassisTypeSpaceSaving = 0x0F,
436 MiscChassisTypeLunchBox = 0x10,
437 MiscChassisTypeMainServerChassis = 0x11,
438 MiscChassisTypeExpansionChassis = 0x12,
439 MiscChassisTypeSubChassis = 0x13,
440 MiscChassisTypeBusExpansionChassis = 0x14,
441 MiscChassisTypePeripheralChassis = 0x15,
442 MiscChassisTypeRaidChassis = 0x16,
443 MiscChassisTypeRackMountChassis = 0x17,
444 MiscChassisTypeSealedCasePc = 0x18,
445 MiscChassisMultiSystemChassis = 0x19,
446 MiscChassisCompactPCI = 0x1A,
447 MiscChassisAdvancedTCA = 0x1B,
448 MiscChassisBlade = 0x1C,
449 MiscChassisBladeEnclosure = 0x1D,
450 MiscChassisTablet = 0x1E,
451 MiscChassisConvertible = 0x1F,
452 MiscChassisDetachable = 0x20,
453 MiscChassisIoTGateway = 0x21,
454 MiscChassisEmbeddedPc = 0x22,
455 MiscChassisMiniPc = 0x23,
456 MiscChassisStickPc = 0x24
463 ChassisStateOther = 0x01,
464 ChassisStateUnknown = 0x02,
465 ChassisStateSafe = 0x03,
466 ChassisStateWarning = 0x04,
467 ChassisStateCritical = 0x05,
468 ChassisStateNonRecoverable = 0x06
475 ChassisSecurityStatusOther = 0x01,
476 ChassisSecurityStatusUnknown = 0x02,
477 ChassisSecurityStatusNone = 0x03,
478 ChassisSecurityStatusExternalInterfaceLockedOut = 0x04,
479 ChassisSecurityStatusExternalInterfaceLockedEnabled = 0x05
486 UINT8 ContainedElementType;
487 UINT8 ContainedElementMinimum;
488 UINT8 ContainedElementMaximum;
499 ChassisHeightUnspecified = 0x00,
508 ChassisRackTypeUnspecified = 0x00,
509 ChassisRackTypeOU = 0x01,
531 UINT8 NumberofPowerCords;
532 UINT8 ContainedElementCount;
533 UINT8 ContainedElementRecordLength;
554 ProcessorOther = 0x01,
555 ProcessorUnknown = 0x02,
556 CentralProcessor = 0x03,
557 MathProcessor = 0x04,
559 VideoProcessor = 0x06
566 ProcessorFamilyOther = 0x01,
567 ProcessorFamilyUnknown = 0x02,
568 ProcessorFamily8086 = 0x03,
569 ProcessorFamily80286 = 0x04,
570 ProcessorFamilyIntel386 = 0x05,
571 ProcessorFamilyIntel486 = 0x06,
572 ProcessorFamily8087 = 0x07,
573 ProcessorFamily80287 = 0x08,
574 ProcessorFamily80387 = 0x09,
575 ProcessorFamily80487 = 0x0A,
576 ProcessorFamilyPentium = 0x0B,
577 ProcessorFamilyPentiumPro = 0x0C,
578 ProcessorFamilyPentiumII = 0x0D,
579 ProcessorFamilyPentiumMMX = 0x0E,
580 ProcessorFamilyCeleron = 0x0F,
581 ProcessorFamilyPentiumIIXeon = 0x10,
582 ProcessorFamilyPentiumIII = 0x11,
583 ProcessorFamilyM1 = 0x12,
584 ProcessorFamilyM2 = 0x13,
585 ProcessorFamilyIntelCeleronM = 0x14,
586 ProcessorFamilyIntelPentium4Ht = 0x15,
587 ProcessorFamilyIntel = 0x16,
588 ProcessorFamilyAmdDuron = 0x18,
589 ProcessorFamilyK5 = 0x19,
590 ProcessorFamilyK6 = 0x1A,
591 ProcessorFamilyK6_2 = 0x1B,
592 ProcessorFamilyK6_3 = 0x1C,
593 ProcessorFamilyAmdAthlon = 0x1D,
594 ProcessorFamilyAmd29000 = 0x1E,
595 ProcessorFamilyK6_2Plus = 0x1F,
596 ProcessorFamilyPowerPC = 0x20,
597 ProcessorFamilyPowerPC601 = 0x21,
598 ProcessorFamilyPowerPC603 = 0x22,
599 ProcessorFamilyPowerPC603Plus = 0x23,
600 ProcessorFamilyPowerPC604 = 0x24,
601 ProcessorFamilyPowerPC620 = 0x25,
602 ProcessorFamilyPowerPCx704 = 0x26,
603 ProcessorFamilyPowerPC750 = 0x27,
604 ProcessorFamilyIntelCoreDuo = 0x28,
605 ProcessorFamilyIntelCoreDuoMobile = 0x29,
606 ProcessorFamilyIntelCoreSoloMobile = 0x2A,
607 ProcessorFamilyIntelAtom = 0x2B,
608 ProcessorFamilyIntelCoreM = 0x2C,
609 ProcessorFamilyIntelCorem3 = 0x2D,
610 ProcessorFamilyIntelCorem5 = 0x2E,
611 ProcessorFamilyIntelCorem7 = 0x2F,
612 ProcessorFamilyAlpha = 0x30,
613 ProcessorFamilyAlpha21064 = 0x31,
614 ProcessorFamilyAlpha21066 = 0x32,
615 ProcessorFamilyAlpha21164 = 0x33,
616 ProcessorFamilyAlpha21164PC = 0x34,
617 ProcessorFamilyAlpha21164a = 0x35,
618 ProcessorFamilyAlpha21264 = 0x36,
619 ProcessorFamilyAlpha21364 = 0x37,
620 ProcessorFamilyAmdTurionIIUltraDualCoreMobileM = 0x38,
621 ProcessorFamilyAmdTurionIIDualCoreMobileM = 0x39,
622 ProcessorFamilyAmdAthlonIIDualCoreM = 0x3A,
623 ProcessorFamilyAmdOpteron6100Series = 0x3B,
624 ProcessorFamilyAmdOpteron4100Series = 0x3C,
625 ProcessorFamilyAmdOpteron6200Series = 0x3D,
626 ProcessorFamilyAmdOpteron4200Series = 0x3E,
627 ProcessorFamilyAmdFxSeries = 0x3F,
628 ProcessorFamilyMips = 0x40,
629 ProcessorFamilyMIPSR4000 = 0x41,
630 ProcessorFamilyMIPSR4200 = 0x42,
631 ProcessorFamilyMIPSR4400 = 0x43,
632 ProcessorFamilyMIPSR4600 = 0x44,
633 ProcessorFamilyMIPSR10000 = 0x45,
634 ProcessorFamilyAmdCSeries = 0x46,
635 ProcessorFamilyAmdESeries = 0x47,
637 ProcessorFamilyAmdGSeries = 0x49,
638 ProcessorFamilyAmdZSeries = 0x4A,
639 ProcessorFamilyAmdRSeries = 0x4B,
640 ProcessorFamilyAmdOpteron4300 = 0x4C,
641 ProcessorFamilyAmdOpteron6300 = 0x4D,
642 ProcessorFamilyAmdOpteron3300 = 0x4E,
643 ProcessorFamilyAmdFireProSeries = 0x4F,
644 ProcessorFamilySparc = 0x50,
645 ProcessorFamilySuperSparc = 0x51,
646 ProcessorFamilymicroSparcII = 0x52,
647 ProcessorFamilymicroSparcIIep = 0x53,
648 ProcessorFamilyUltraSparc = 0x54,
649 ProcessorFamilyUltraSparcII = 0x55,
650 ProcessorFamilyUltraSparcIii = 0x56,
651 ProcessorFamilyUltraSparcIII = 0x57,
652 ProcessorFamilyUltraSparcIIIi = 0x58,
653 ProcessorFamily68040 = 0x60,
654 ProcessorFamily68xxx = 0x61,
655 ProcessorFamily68000 = 0x62,
656 ProcessorFamily68010 = 0x63,
657 ProcessorFamily68020 = 0x64,
658 ProcessorFamily68030 = 0x65,
659 ProcessorFamilyAmdAthlonX4QuadCore = 0x66,
660 ProcessorFamilyAmdOpteronX1000Series = 0x67,
661 ProcessorFamilyAmdOpteronX2000Series = 0x68,
662 ProcessorFamilyAmdOpteronASeries = 0x69,
663 ProcessorFamilyAmdOpteronX3000Series = 0x6A,
664 ProcessorFamilyAmdZen = 0x6B,
665 ProcessorFamilyHobbit = 0x70,
666 ProcessorFamilyCrusoeTM5000 = 0x78,
667 ProcessorFamilyCrusoeTM3000 = 0x79,
668 ProcessorFamilyEfficeonTM8000 = 0x7A,
669 ProcessorFamilyWeitek = 0x80,
670 ProcessorFamilyItanium = 0x82,
671 ProcessorFamilyAmdAthlon64 = 0x83,
672 ProcessorFamilyAmdOpteron = 0x84,
673 ProcessorFamilyAmdSempron = 0x85,
674 ProcessorFamilyAmdTurion64Mobile = 0x86,
675 ProcessorFamilyDualCoreAmdOpteron = 0x87,
676 ProcessorFamilyAmdAthlon64X2DualCore = 0x88,
677 ProcessorFamilyAmdTurion64X2Mobile = 0x89,
678 ProcessorFamilyQuadCoreAmdOpteron = 0x8A,
679 ProcessorFamilyThirdGenerationAmdOpteron = 0x8B,
680 ProcessorFamilyAmdPhenomFxQuadCore = 0x8C,
681 ProcessorFamilyAmdPhenomX4QuadCore = 0x8D,
682 ProcessorFamilyAmdPhenomX2DualCore = 0x8E,
683 ProcessorFamilyAmdAthlonX2DualCore = 0x8F,
684 ProcessorFamilyPARISC = 0x90,
685 ProcessorFamilyPaRisc8500 = 0x91,
686 ProcessorFamilyPaRisc8000 = 0x92,
687 ProcessorFamilyPaRisc7300LC = 0x93,
688 ProcessorFamilyPaRisc7200 = 0x94,
689 ProcessorFamilyPaRisc7100LC = 0x95,
690 ProcessorFamilyPaRisc7100 = 0x96,
691 ProcessorFamilyV30 = 0xA0,
692 ProcessorFamilyQuadCoreIntelXeon3200Series = 0xA1,
693 ProcessorFamilyDualCoreIntelXeon3000Series = 0xA2,
694 ProcessorFamilyQuadCoreIntelXeon5300Series = 0xA3,
695 ProcessorFamilyDualCoreIntelXeon5100Series = 0xA4,
696 ProcessorFamilyDualCoreIntelXeon5000Series = 0xA5,
697 ProcessorFamilyDualCoreIntelXeonLV = 0xA6,
698 ProcessorFamilyDualCoreIntelXeonULV = 0xA7,
699 ProcessorFamilyDualCoreIntelXeon7100Series = 0xA8,
700 ProcessorFamilyQuadCoreIntelXeon5400Series = 0xA9,
701 ProcessorFamilyQuadCoreIntelXeon = 0xAA,
702 ProcessorFamilyDualCoreIntelXeon5200Series = 0xAB,
703 ProcessorFamilyDualCoreIntelXeon7200Series = 0xAC,
704 ProcessorFamilyQuadCoreIntelXeon7300Series = 0xAD,
705 ProcessorFamilyQuadCoreIntelXeon7400Series = 0xAE,
706 ProcessorFamilyMultiCoreIntelXeon7400Series = 0xAF,
707 ProcessorFamilyPentiumIIIXeon = 0xB0,
708 ProcessorFamilyPentiumIIISpeedStep = 0xB1,
709 ProcessorFamilyPentium4 = 0xB2,
710 ProcessorFamilyIntelXeon = 0xB3,
711 ProcessorFamilyAS400 = 0xB4,
712 ProcessorFamilyIntelXeonMP = 0xB5,
713 ProcessorFamilyAMDAthlonXP = 0xB6,
714 ProcessorFamilyAMDAthlonMP = 0xB7,
715 ProcessorFamilyIntelItanium2 = 0xB8,
716 ProcessorFamilyIntelPentiumM = 0xB9,
717 ProcessorFamilyIntelCeleronD = 0xBA,
718 ProcessorFamilyIntelPentiumD = 0xBB,
719 ProcessorFamilyIntelPentiumEx = 0xBC,
721 ProcessorFamilyReserved = 0xBE,
722 ProcessorFamilyIntelCore2 = 0xBF,
723 ProcessorFamilyIntelCore2Solo = 0xC0,
724 ProcessorFamilyIntelCore2Extreme = 0xC1,
725 ProcessorFamilyIntelCore2Quad = 0xC2,
726 ProcessorFamilyIntelCore2ExtremeMobile = 0xC3,
727 ProcessorFamilyIntelCore2DuoMobile = 0xC4,
728 ProcessorFamilyIntelCore2SoloMobile = 0xC5,
729 ProcessorFamilyIntelCoreI7 = 0xC6,
730 ProcessorFamilyDualCoreIntelCeleron = 0xC7,
731 ProcessorFamilyIBM390 = 0xC8,
732 ProcessorFamilyG4 = 0xC9,
733 ProcessorFamilyG5 = 0xCA,
734 ProcessorFamilyG6 = 0xCB,
735 ProcessorFamilyzArchitecture = 0xCC,
736 ProcessorFamilyIntelCoreI5 = 0xCD,
737 ProcessorFamilyIntelCoreI3 = 0xCE,
738 ProcessorFamilyIntelCoreI9 = 0xCF,
739 ProcessorFamilyIntelXeonD = 0xD0,
741 ProcessorFamilyViaC7D = 0xD3,
742 ProcessorFamilyViaC7 = 0xD4,
743 ProcessorFamilyViaEden = 0xD5,
744 ProcessorFamilyMultiCoreIntelXeon = 0xD6,
745 ProcessorFamilyDualCoreIntelXeon3Series = 0xD7,
746 ProcessorFamilyQuadCoreIntelXeon3Series = 0xD8,
747 ProcessorFamilyViaNano = 0xD9,
748 ProcessorFamilyDualCoreIntelXeon5Series = 0xDA,
749 ProcessorFamilyQuadCoreIntelXeon5Series = 0xDB,
750 ProcessorFamilyDualCoreIntelXeon7Series = 0xDD,
751 ProcessorFamilyQuadCoreIntelXeon7Series = 0xDE,
752 ProcessorFamilyMultiCoreIntelXeon7Series = 0xDF,
753 ProcessorFamilyMultiCoreIntelXeon3400Series = 0xE0,
754 ProcessorFamilyAmdOpteron3000Series = 0xE4,
755 ProcessorFamilyAmdSempronII = 0xE5,
756 ProcessorFamilyEmbeddedAmdOpteronQuadCore = 0xE6,
757 ProcessorFamilyAmdPhenomTripleCore = 0xE7,
758 ProcessorFamilyAmdTurionUltraDualCoreMobile = 0xE8,
759 ProcessorFamilyAmdTurionDualCoreMobile = 0xE9,
760 ProcessorFamilyAmdAthlonDualCore = 0xEA,
761 ProcessorFamilyAmdSempronSI = 0xEB,
762 ProcessorFamilyAmdPhenomII = 0xEC,
763 ProcessorFamilyAmdAthlonII = 0xED,
764 ProcessorFamilySixCoreAmdOpteron = 0xEE,
765 ProcessorFamilyAmdSempronM = 0xEF,
766 ProcessorFamilyi860 = 0xFA,
767 ProcessorFamilyi960 = 0xFB,
768 ProcessorFamilyIndicatorFamily2 = 0xFE,
769 ProcessorFamilyReserved1 = 0xFF
776 ProcessorFamilyARMv7 = 0x0100,
777 ProcessorFamilyARMv8 = 0x0101,
778 ProcessorFamilyARMv9 = 0x0102,
779 ProcessorFamilySH3 = 0x0104,
780 ProcessorFamilySH4 = 0x0105,
781 ProcessorFamilyARM = 0x0118,
782 ProcessorFamilyStrongARM = 0x0119,
783 ProcessorFamily6x86 = 0x012C,
784 ProcessorFamilyMediaGX = 0x012D,
785 ProcessorFamilyMII = 0x012E,
786 ProcessorFamilyWinChip = 0x0140,
787 ProcessorFamilyDSP = 0x015E,
788 ProcessorFamilyVideoProcessor = 0x01F4,
789 ProcessorFamilyRiscvRV32 = 0x0200,
790 ProcessorFamilyRiscVRV64 = 0x0201,
791 ProcessorFamilyRiscVRV128 = 0x0202,
792 ProcessorFamilyLoongArch = 0x0258,
793 ProcessorFamilyLoongson1 = 0x0259,
794 ProcessorFamilyLoongson2 = 0x025A,
795 ProcessorFamilyLoongson3 = 0x025B,
796 ProcessorFamilyLoongson2K = 0x025C,
797 ProcessorFamilyLoongson3A = 0x025D,
798 ProcessorFamilyLoongson3B = 0x025E,
799 ProcessorFamilyLoongson3C = 0x025F,
800 ProcessorFamilyLoongson3D = 0x0260,
801 ProcessorFamilyLoongson3E = 0x0261,
802 ProcessorFamilyDualCoreLoongson2K = 0x0262,
803 ProcessorFamilyQuadCoreLoongson3A = 0x026C,
804 ProcessorFamilyMultiCoreLoongson3A = 0x026D,
805 ProcessorFamilyQuadCoreLoongson3B = 0x026E,
806 ProcessorFamilyMultiCoreLoongson3B = 0x026F,
807 ProcessorFamilyMultiCoreLoongson3C = 0x0270,
808 ProcessorFamilyMultiCoreLoongson3D = 0x0271,
809 ProcessorFamilyIntelCore3 = 0x0300,
810 ProcessorFamilyIntelCore5 = 0x0301,
811 ProcessorFamilyIntelCore7 = 0x0302,
812 ProcessorFamilyIntelCore9 = 0x0303,
813 ProcessorFamilyIntelCoreUltra3 = 0x0304,
814 ProcessorFamilyIntelCoreUltra5 = 0x0305,
815 ProcessorFamilyIntelCoreUltra7 = 0x0306,
816 ProcessorFamilyIntelCoreUltra9 = 0x0307
823 UINT8 ProcessorVoltageCapability5V : 1;
824 UINT8 ProcessorVoltageCapability3_3V : 1;
825 UINT8 ProcessorVoltageCapability2_9V : 1;
828 UINT8 ProcessorVoltageIndicateLegacy : 1;
835 ProcessorUpgradeOther = 0x01,
836 ProcessorUpgradeUnknown = 0x02,
837 ProcessorUpgradeDaughterBoard = 0x03,
838 ProcessorUpgradeZIFSocket = 0x04,
840 ProcessorUpgradeNone = 0x06,
841 ProcessorUpgradeLIFSocket = 0x07,
842 ProcessorUpgradeSlot1 = 0x08,
843 ProcessorUpgradeSlot2 = 0x09,
844 ProcessorUpgrade370PinSocket = 0x0A,
845 ProcessorUpgradeSlotA = 0x0B,
846 ProcessorUpgradeSlotM = 0x0C,
847 ProcessorUpgradeSocket423 = 0x0D,
849 ProcessorUpgradeSocket478 = 0x0F,
850 ProcessorUpgradeSocket754 = 0x10,
851 ProcessorUpgradeSocket940 = 0x11,
852 ProcessorUpgradeSocket939 = 0x12,
853 ProcessorUpgradeSocketmPGA604 = 0x13,
854 ProcessorUpgradeSocketLGA771 = 0x14,
855 ProcessorUpgradeSocketLGA775 = 0x15,
856 ProcessorUpgradeSocketS1 = 0x16,
857 ProcessorUpgradeAM2 = 0x17,
858 ProcessorUpgradeF1207 = 0x18,
859 ProcessorSocketLGA1366 = 0x19,
860 ProcessorUpgradeSocketG34 = 0x1A,
861 ProcessorUpgradeSocketAM3 = 0x1B,
862 ProcessorUpgradeSocketC32 = 0x1C,
863 ProcessorUpgradeSocketLGA1156 = 0x1D,
864 ProcessorUpgradeSocketLGA1567 = 0x1E,
865 ProcessorUpgradeSocketPGA988A = 0x1F,
866 ProcessorUpgradeSocketBGA1288 = 0x20,
867 ProcessorUpgradeSocketrPGA988B = 0x21,
868 ProcessorUpgradeSocketBGA1023 = 0x22,
869 ProcessorUpgradeSocketBGA1224 = 0x23,
871 ProcessorUpgradeSocketLGA1356 = 0x25,
872 ProcessorUpgradeSocketLGA2011 = 0x26,
873 ProcessorUpgradeSocketFS1 = 0x27,
874 ProcessorUpgradeSocketFS2 = 0x28,
875 ProcessorUpgradeSocketFM1 = 0x29,
876 ProcessorUpgradeSocketFM2 = 0x2A,
877 ProcessorUpgradeSocketLGA2011_3 = 0x2B,
878 ProcessorUpgradeSocketLGA1356_3 = 0x2C,
879 ProcessorUpgradeSocketLGA1150 = 0x2D,
880 ProcessorUpgradeSocketBGA1168 = 0x2E,
881 ProcessorUpgradeSocketBGA1234 = 0x2F,
882 ProcessorUpgradeSocketBGA1364 = 0x30,
883 ProcessorUpgradeSocketAM4 = 0x31,
884 ProcessorUpgradeSocketLGA1151 = 0x32,
885 ProcessorUpgradeSocketBGA1356 = 0x33,
886 ProcessorUpgradeSocketBGA1440 = 0x34,
887 ProcessorUpgradeSocketBGA1515 = 0x35,
888 ProcessorUpgradeSocketLGA3647_1 = 0x36,
889 ProcessorUpgradeSocketSP3 = 0x37,
890 ProcessorUpgradeSocketSP3r2 = 0x38,
891 ProcessorUpgradeSocketLGA2066 = 0x39,
892 ProcessorUpgradeSocketBGA1392 = 0x3A,
893 ProcessorUpgradeSocketBGA1510 = 0x3B,
894 ProcessorUpgradeSocketBGA1528 = 0x3C,
895 ProcessorUpgradeSocketLGA4189 = 0x3D,
896 ProcessorUpgradeSocketLGA1200 = 0x3E,
897 ProcessorUpgradeSocketLGA4677 = 0x3F,
898 ProcessorUpgradeSocketLGA1700 = 0x40,
899 ProcessorUpgradeSocketBGA1744 = 0x41,
900 ProcessorUpgradeSocketBGA1781 = 0x42,
901 ProcessorUpgradeSocketBGA1211 = 0x43,
902 ProcessorUpgradeSocketBGA2422 = 0x44,
903 ProcessorUpgradeSocketLGA1211 = 0x45,
904 ProcessorUpgradeSocketLGA2422 = 0x46,
905 ProcessorUpgradeSocketLGA5773 = 0x47,
906 ProcessorUpgradeSocketBGA5773 = 0x48,
907 ProcessorUpgradeSocketAM5 = 0x49,
908 ProcessorUpgradeSocketSP5 = 0x4A,
909 ProcessorUpgradeSocketSP6 = 0x4B,
910 ProcessorUpgradeSocketBGA883 = 0x4C,
911 ProcessorUpgradeSocketBGA1190 = 0x4D,
912 ProcessorUpgradeSocketBGA4129 = 0x4E,
913 ProcessorUpgradeSocketLGA4710 = 0x4F,
914 ProcessorUpgradeSocketLGA7529 = 0x50,
915 ProcessorUpgradeSocketBGA1964 = 0x51,
916 ProcessorUpgradeSocketBGA1792 = 0x52,
917 ProcessorUpgradeSocketBGA2049 = 0x53,
918 ProcessorUpgradeSocketBGA2551 = 0x54,
919 ProcessorUpgradeSocketLGA1851 = 0x55,
920 ProcessorUpgradeSocketBGA2114 = 0x56,
921 ProcessorUpgradeSocketBGA2833 = 0x57,
922 ProcessorUpgradeInvalid = 0xFF
929 UINT32 ProcessorSteppingId : 4;
930 UINT32 ProcessorModel : 4;
931 UINT32 ProcessorFamily : 4;
932 UINT32 ProcessorType : 2;
933 UINT32 ProcessorReserved1 : 2;
934 UINT32 ProcessorXModel : 4;
935 UINT32 ProcessorXFamily : 8;
936 UINT32 ProcessorReserved2 : 4;
940 UINT32 ProcessorFpu : 1;
941 UINT32 ProcessorVme : 1;
942 UINT32 ProcessorDe : 1;
943 UINT32 ProcessorPse : 1;
944 UINT32 ProcessorTsc : 1;
945 UINT32 ProcessorMsr : 1;
946 UINT32 ProcessorPae : 1;
947 UINT32 ProcessorMce : 1;
948 UINT32 ProcessorCx8 : 1;
949 UINT32 ProcessorApic : 1;
950 UINT32 ProcessorReserved1 : 1;
951 UINT32 ProcessorSep : 1;
952 UINT32 ProcessorMtrr : 1;
953 UINT32 ProcessorPge : 1;
954 UINT32 ProcessorMca : 1;
955 UINT32 ProcessorCmov : 1;
956 UINT32 ProcessorPat : 1;
957 UINT32 ProcessorPse36 : 1;
958 UINT32 ProcessorPsn : 1;
959 UINT32 ProcessorClfsh : 1;
960 UINT32 ProcessorReserved2 : 1;
961 UINT32 ProcessorDs : 1;
962 UINT32 ProcessorAcpi : 1;
963 UINT32 ProcessorMmx : 1;
964 UINT32 ProcessorFxsr : 1;
965 UINT32 ProcessorSse : 1;
966 UINT32 ProcessorSse2 : 1;
967 UINT32 ProcessorSs : 1;
968 UINT32 ProcessorReserved3 : 1;
969 UINT32 ProcessorTm : 1;
970 UINT32 ProcessorReserved4 : 2;
974 UINT16 ProcessorReserved1 : 1;
975 UINT16 ProcessorUnknown : 1;
976 UINT16 Processor64BitCapable : 1;
977 UINT16 ProcessorMultiCore : 1;
978 UINT16 ProcessorHardwareThread : 1;
979 UINT16 ProcessorExecuteProtection : 1;
980 UINT16 ProcessorEnhancedVirtualization : 1;
981 UINT16 ProcessorPowerPerformanceCtrl : 1;
982 UINT16 Processor128BitCapable : 1;
983 UINT16 ProcessorArm64SocId : 1;
984 UINT16 ProcessorReserved2 : 6;
1000#ifdef MDE_CPU_AARCH64
1008#elif defined (MDE_CPU_IA32) || defined (MDE_CPU_X64)
1039 UINT16 ExternalClock;
1041 UINT16 CurrentSpeed;
1044 UINT16 L1CacheHandle;
1045 UINT16 L2CacheHandle;
1046 UINT16 L3CacheHandle;
1054 UINT8 EnabledCoreCount;
1056 UINT16 ProcessorCharacteristics;
1060 UINT16 ProcessorFamily2;
1065 UINT16 EnabledCoreCount2;
1066 UINT16 ThreadCount2;
1070 UINT16 ThreadEnabled;
1081 ErrorDetectingMethodOther = 0x01,
1082 ErrorDetectingMethodUnknown = 0x02,
1083 ErrorDetectingMethodNone = 0x03,
1084 ErrorDetectingMethodParity = 0x04,
1085 ErrorDetectingMethod32Ecc = 0x05,
1086 ErrorDetectingMethod64Ecc = 0x06,
1087 ErrorDetectingMethod128Ecc = 0x07,
1088 ErrorDetectingMethodCrc = 0x08
1098 UINT8 SingleBitErrorCorrect : 1;
1099 UINT8 DoubleBitErrorCorrect : 1;
1100 UINT8 ErrorScrubbing : 1;
1108 MemoryInterleaveOther = 0x01,
1109 MemoryInterleaveUnknown = 0x02,
1110 MemoryInterleaveOneWay = 0x03,
1111 MemoryInterleaveTwoWay = 0x04,
1112 MemoryInterleaveFourWay = 0x05,
1113 MemoryInterleaveEightWay = 0x06,
1114 MemoryInterleaveSixteenWay = 0x07
1123 UINT16 SeventyNs : 1;
1126 UINT16 Reserved : 11;
1147 UINT8 MaxMemoryModuleSize;
1149 UINT16 SupportMemoryType;
1150 UINT8 MemoryModuleVoltage;
1151 UINT8 AssociatedMemorySlotNum;
1152 UINT16 MemoryModuleConfigHandles[1];
1161 UINT16 Standard : 1;
1162 UINT16 FastPageMode : 1;
1168 UINT16 BurstEdo : 1;
1170 UINT16 Reserved : 5;
1178 UINT8 SingleOrDoubleBank : 1;
1195 UINT8 BankConnections;
1207 UINT16 CacheLevel : 3;
1208 UINT16 CacheSocketed : 1;
1209 UINT16 Reserved : 1;
1210 UINT16 Location : 2;
1212 UINT16 OperationMode : 2;
1213 UINT16 Reserved2 : 6;
1221 UINT16 Granularity64K : 1;
1225#define SMBIOS_CACHE_SIZE_MAX_SIZE_1K_GRANULARITY 32767
1227#define SMBIOS_CACHE_SIZE_MAX_SIZE_64K_GRANULARITY (32767 * 64)
1234 UINT32 Granularity64K : 1;
1243 UINT16 NonBurst : 1;
1245 UINT16 PipelineBurst : 1;
1246 UINT16 Synchronous : 1;
1247 UINT16 Asynchronous : 1;
1248 UINT16 Reserved : 9;
1255 CacheErrorOther = 0x01,
1256 CacheErrorUnknown = 0x02,
1257 CacheErrorNone = 0x03,
1258 CacheErrorParity = 0x04,
1267 CacheTypeOther = 0x01,
1268 CacheTypeUnknown = 0x02,
1269 CacheTypeInstruction = 0x03,
1270 CacheTypeData = 0x04,
1271 CacheTypeUnified = 0x05
1278 CacheAssociativityOther = 0x01,
1279 CacheAssociativityUnknown = 0x02,
1280 CacheAssociativityDirectMapped = 0x03,
1281 CacheAssociativity2Way = 0x04,
1282 CacheAssociativity4Way = 0x05,
1283 CacheAssociativityFully = 0x06,
1284 CacheAssociativity8Way = 0x07,
1285 CacheAssociativity16Way = 0x08,
1286 CacheAssociativity12Way = 0x09,
1287 CacheAssociativity24Way = 0x0A,
1288 CacheAssociativity32Way = 0x0B,
1289 CacheAssociativity48Way = 0x0C,
1290 CacheAssociativity64Way = 0x0D,
1291 CacheAssociativity20Way = 0x0E
1305 UINT16 CacheConfiguration;
1325 PortConnectorTypeNone = 0x00,
1326 PortConnectorTypeCentronics = 0x01,
1327 PortConnectorTypeMiniCentronics = 0x02,
1328 PortConnectorTypeProprietary = 0x03,
1329 PortConnectorTypeDB25Male = 0x04,
1330 PortConnectorTypeDB25Female = 0x05,
1331 PortConnectorTypeDB15Male = 0x06,
1332 PortConnectorTypeDB15Female = 0x07,
1333 PortConnectorTypeDB9Male = 0x08,
1334 PortConnectorTypeDB9Female = 0x09,
1335 PortConnectorTypeRJ11 = 0x0A,
1336 PortConnectorTypeRJ45 = 0x0B,
1337 PortConnectorType50PinMiniScsi = 0x0C,
1338 PortConnectorTypeMiniDin = 0x0D,
1339 PortConnectorTypeMicroDin = 0x0E,
1340 PortConnectorTypePS2 = 0x0F,
1341 PortConnectorTypeInfrared = 0x10,
1342 PortConnectorTypeHpHil = 0x11,
1343 PortConnectorTypeUsb = 0x12,
1344 PortConnectorTypeSsaScsi = 0x13,
1345 PortConnectorTypeCircularDin8Male = 0x14,
1346 PortConnectorTypeCircularDin8Female = 0x15,
1347 PortConnectorTypeOnboardIde = 0x16,
1348 PortConnectorTypeOnboardFloppy = 0x17,
1349 PortConnectorType9PinDualInline = 0x18,
1350 PortConnectorType25PinDualInline = 0x19,
1351 PortConnectorType50PinDualInline = 0x1A,
1352 PortConnectorType68PinDualInline = 0x1B,
1353 PortConnectorTypeOnboardSoundInput = 0x1C,
1354 PortConnectorTypeMiniCentronicsType14 = 0x1D,
1355 PortConnectorTypeMiniCentronicsType26 = 0x1E,
1356 PortConnectorTypeHeadPhoneMiniJack = 0x1F,
1357 PortConnectorTypeBNC = 0x20,
1358 PortConnectorType1394 = 0x21,
1359 PortConnectorTypeSasSata = 0x22,
1360 PortConnectorTypeUsbTypeC = 0x23,
1361 PortConnectorTypePC98 = 0xA0,
1362 PortConnectorTypePC98Hireso = 0xA1,
1363 PortConnectorTypePCH98 = 0xA2,
1364 PortConnectorTypePC98Note = 0xA3,
1365 PortConnectorTypePC98Full = 0xA4,
1366 PortConnectorTypeOther = 0xFF
1373 PortTypeNone = 0x00,
1374 PortTypeParallelXtAtCompatible = 0x01,
1375 PortTypeParallelPortPs2 = 0x02,
1376 PortTypeParallelPortEcp = 0x03,
1377 PortTypeParallelPortEpp = 0x04,
1378 PortTypeParallelPortEcpEpp = 0x05,
1379 PortTypeSerialXtAtCompatible = 0x06,
1380 PortTypeSerial16450Compatible = 0x07,
1381 PortTypeSerial16550Compatible = 0x08,
1382 PortTypeSerial16550ACompatible = 0x09,
1383 PortTypeScsi = 0x0A,
1384 PortTypeMidi = 0x0B,
1385 PortTypeJoyStick = 0x0C,
1386 PortTypeKeyboard = 0x0D,
1387 PortTypeMouse = 0x0E,
1388 PortTypeSsaScsi = 0x0F,
1390 PortTypeFireWire = 0x11,
1391 PortTypePcmciaTypeI = 0x12,
1392 PortTypePcmciaTypeII = 0x13,
1393 PortTypePcmciaTypeIII = 0x14,
1394 PortTypeCardBus = 0x15,
1395 PortTypeAccessBusPort = 0x16,
1396 PortTypeScsiII = 0x17,
1397 PortTypeScsiWide = 0x18,
1398 PortTypePC98 = 0x19,
1399 PortTypePC98Hireso = 0x1A,
1400 PortTypePCH98 = 0x1B,
1401 PortTypeVideoPort = 0x1C,
1402 PortTypeAudioPort = 0x1D,
1403 PortTypeModemPort = 0x1E,
1404 PortTypeNetworkPort = 0x1F,
1405 PortTypeSata = 0x20,
1408 PortTypeThunderbolt = 0x23,
1409 PortType8251Compatible = 0xA0,
1410 PortType8251FifoCompatible = 0xA1,
1411 PortTypeOther = 0xFF
1434 SlotTypeOther = 0x01,
1435 SlotTypeUnknown = 0x02,
1438 SlotTypeEisa = 0x05,
1440 SlotTypePcmcia = 0x07,
1441 SlotTypeVlVesa = 0x08,
1442 SlotTypeProprietary = 0x09,
1443 SlotTypeProcessorCardSlot = 0x0A,
1444 SlotTypeProprietaryMemoryCardSlot = 0x0B,
1445 SlotTypeIORiserCardSlot = 0x0C,
1446 SlotTypeNuBus = 0x0D,
1447 SlotTypePci66MhzCapable = 0x0E,
1449 SlotTypeApg2X = 0x10,
1450 SlotTypeAgp4X = 0x11,
1451 SlotTypePciX = 0x12,
1452 SlotTypeAgp8X = 0x13,
1453 SlotTypeM2Socket1_DP = 0x14,
1454 SlotTypeM2Socket1_SD = 0x15,
1455 SlotTypeM2Socket2 = 0x16,
1456 SlotTypeM2Socket3 = 0x17,
1457 SlotTypeMxmTypeI = 0x18,
1458 SlotTypeMxmTypeII = 0x19,
1459 SlotTypeMxmTypeIIIStandard = 0x1A,
1460 SlotTypeMxmTypeIIIHe = 0x1B,
1461 SlotTypeMxmTypeIV = 0x1C,
1462 SlotTypeMxm30TypeA = 0x1D,
1463 SlotTypeMxm30TypeB = 0x1E,
1464 SlotTypePciExpressGen2Sff_8639 = 0x1F,
1465 SlotTypePciExpressGen3Sff_8639 = 0x20,
1473 SlotTypeOCPNICPriorto30 = 0x28,
1474 SlotTypeCXLFlexbus10 = 0x30,
1475 SlotTypePC98C20 = 0xA0,
1476 SlotTypePC98C24 = 0xA1,
1477 SlotTypePC98E = 0xA2,
1478 SlotTypePC98LocalBus = 0xA3,
1479 SlotTypePC98Card = 0xA4,
1480 SlotTypePciExpress = 0xA5,
1481 SlotTypePciExpressX1 = 0xA6,
1482 SlotTypePciExpressX2 = 0xA7,
1483 SlotTypePciExpressX4 = 0xA8,
1484 SlotTypePciExpressX8 = 0xA9,
1485 SlotTypePciExpressX16 = 0xAA,
1486 SlotTypePciExpressGen2 = 0xAB,
1487 SlotTypePciExpressGen2X1 = 0xAC,
1488 SlotTypePciExpressGen2X2 = 0xAD,
1489 SlotTypePciExpressGen2X4 = 0xAE,
1490 SlotTypePciExpressGen2X8 = 0xAF,
1491 SlotTypePciExpressGen2X16 = 0xB0,
1492 SlotTypePciExpressGen3 = 0xB1,
1493 SlotTypePciExpressGen3X1 = 0xB2,
1494 SlotTypePciExpressGen3X2 = 0xB3,
1495 SlotTypePciExpressGen3X4 = 0xB4,
1496 SlotTypePciExpressGen3X8 = 0xB5,
1497 SlotTypePciExpressGen3X16 = 0xB6,
1498 SlotTypePciExpressGen4 = 0xB8,
1499 SlotTypePciExpressGen4X1 = 0xB9,
1500 SlotTypePciExpressGen4X2 = 0xBA,
1501 SlotTypePciExpressGen4X4 = 0xBB,
1502 SlotTypePciExpressGen4X8 = 0xBC,
1503 SlotTypePciExpressGen4X16 = 0xBD,
1504 SlotTypePCIExpressGen5 = 0xBE,
1505 SlotTypePCIExpressGen5X1 = 0xBF,
1506 SlotTypePCIExpressGen5X2 = 0xC0,
1507 SlotTypePCIExpressGen5X4 = 0xC1,
1508 SlotTypePCIExpressGen5X8 = 0xC2,
1509 SlotTypePCIExpressGen5X16 = 0xC3,
1510 SlotTypePCIExpressGen6andBeyond = 0xC4,
1511 SlotTypeEnterpriseandDatacenter1UE1FormFactorSlot = 0xC5,
1512 SlotTypeEnterpriseandDatacenter3E3FormFactorSlot = 0xC6
1519 SlotDataBusWidthOther = 0x01,
1520 SlotDataBusWidthUnknown = 0x02,
1521 SlotDataBusWidth8Bit = 0x03,
1522 SlotDataBusWidth16Bit = 0x04,
1523 SlotDataBusWidth32Bit = 0x05,
1524 SlotDataBusWidth64Bit = 0x06,
1525 SlotDataBusWidth128Bit = 0x07,
1539 SlotPhysicalWidthOther = 0x01,
1540 SlotPhysicalWidthUnknown = 0x02,
1541 SlotPhysicalWidth8Bit = 0x03,
1542 SlotPhysicalWidth16Bit = 0x04,
1543 SlotPhysicalWidth32Bit = 0x05,
1544 SlotPhysicalWidth64Bit = 0x06,
1545 SlotPhysicalWidth128Bit = 0x07,
1572 SlotUsageOther = 0x01,
1573 SlotUsageUnknown = 0x02,
1574 SlotUsageAvailable = 0x03,
1575 SlotUsageInUse = 0x04,
1576 SlotUsageUnavailable = 0x05
1583 SlotLengthOther = 0x01,
1584 SlotLengthUnknown = 0x02,
1585 SlotLengthShort = 0x03,
1586 SlotLengthLong = 0x04
1593 UINT8 CharacteristicsUnknown : 1;
1594 UINT8 Provides50Volts : 1;
1595 UINT8 Provides33Volts : 1;
1596 UINT8 SharedSlot : 1;
1597 UINT8 PcCard16Supported : 1;
1598 UINT8 CardBusSupported : 1;
1599 UINT8 ZoomVideoSupported : 1;
1600 UINT8 ModemRingResumeSupported : 1;
1606 UINT8 PmeSignalSupported : 1;
1607 UINT8 HotPlugDevicesSupported : 1;
1608 UINT8 SmbusSignalSupported : 1;
1609 UINT8 BifurcationSupported : 1;
1610 UINT8 AsyncSurpriseRemoval : 1;
1611 UINT8 FlexbusSlotCxl10Capable : 1;
1612 UINT8 FlexbusSlotCxl20Capable : 1;
1613 UINT8 FlexbusSlotCxl30Capable : 1;
1620 SlotHeightNone = 0x00,
1621 SlotHeightOther = 0x01,
1622 SlotHeightUnknown = 0x02,
1623 SlotHeightFullHeight = 0x03,
1624 SlotHeightLowProfile = 0x04
1631 UINT16 SegmentGroupNum;
1657 UINT16 SegmentGroupNum;
1664 UINT8 PeerGroupingCount;
1680 UINT8 SlotInformation;
1681 UINT8 SlotPhysicalWidth;
1693 OnBoardDeviceTypeOther = 0x01,
1694 OnBoardDeviceTypeUnknown = 0x02,
1695 OnBoardDeviceTypeVideo = 0x03,
1696 OnBoardDeviceTypeScsiController = 0x04,
1697 OnBoardDeviceTypeEthernet = 0x05,
1698 OnBoardDeviceTypeTokenRing = 0x06,
1699 OnBoardDeviceTypeSound = 0x07,
1700 OnBoardDeviceTypePATAController = 0x08,
1701 OnBoardDeviceTypeSATAController = 0x09,
1702 OnBoardDeviceTypeSASController = 0x0A
1756 UINT8 InstallableLanguages;
1787 EventLogTypeReserved = 0x00,
1788 EventLogTypeSingleBitECC = 0x01,
1789 EventLogTypeMultiBitECC = 0x02,
1790 EventLogTypeParityMemErr = 0x03,
1791 EventLogTypeBusTimeOut = 0x04,
1792 EventLogTypeIOChannelCheck = 0x05,
1793 EventLogTypeSoftwareNMI = 0x06,
1794 EventLogTypePOSTMemResize = 0x07,
1795 EventLogTypePOSTErr = 0x08,
1796 EventLogTypePCIParityErr = 0x09,
1797 EventLogTypePCISystemErr = 0x0A,
1798 EventLogTypeCPUFailure = 0x0B,
1799 EventLogTypeEISATimeOut = 0x0C,
1800 EventLogTypeMemLogDisabled = 0x0D,
1801 EventLogTypeLoggingDisabled = 0x0E,
1802 EventLogTypeSysLimitExce = 0x10,
1803 EventLogTypeAsyncHWTimer = 0x11,
1804 EventLogTypeSysConfigInfo = 0x12,
1805 EventLogTypeHDInfo = 0x13,
1806 EventLogTypeSysReconfig = 0x14,
1807 EventLogTypeUncorrectCPUErr = 0x15,
1808 EventLogTypeAreaResetAndClr = 0x16,
1809 EventLogTypeSystemBoot = 0x17,
1812 EventLogTypeEndOfLog = 0xFF
1819 EventLogVariableNone = 0x00,
1820 EventLogVariableHandle = 0x01,
1821 EventLogVariableMutilEvent = 0x02,
1822 EventLogVariableMutilEventHandle = 0x03,
1823 EventLogVariablePOSTResultBitmap = 0x04,
1824 EventLogVariableSysManagementType = 0x05,
1825 EventLogVariableMutliEventSysManagmentType = 0x06,
1826 EventLogVariableUnused = 0x07,
1827 EventLogVariableOEMAssigned = 0x80
1835 UINT8 DataFormatType;
1848 UINT16 LogAreaLength;
1849 UINT16 LogHeaderStartOffset;
1850 UINT16 LogDataStartOffset;
1853 UINT32 LogChangeToken;
1854 UINT32 AccessMethodAddress;
1855 UINT8 LogHeaderFormat;
1856 UINT8 NumberOfSupportedLogTypeDescriptors;
1857 UINT8 LengthOfLogTypeDescriptor;
1865 MemoryArrayLocationOther = 0x01,
1866 MemoryArrayLocationUnknown = 0x02,
1867 MemoryArrayLocationSystemBoard = 0x03,
1868 MemoryArrayLocationIsaAddonCard = 0x04,
1869 MemoryArrayLocationEisaAddonCard = 0x05,
1870 MemoryArrayLocationPciAddonCard = 0x06,
1871 MemoryArrayLocationMcaAddonCard = 0x07,
1872 MemoryArrayLocationPcmciaAddonCard = 0x08,
1873 MemoryArrayLocationProprietaryAddonCard = 0x09,
1874 MemoryArrayLocationNuBus = 0x0A,
1875 MemoryArrayLocationPc98C20AddonCard = 0xA0,
1876 MemoryArrayLocationPc98C24AddonCard = 0xA1,
1877 MemoryArrayLocationPc98EAddonCard = 0xA2,
1878 MemoryArrayLocationPc98LocalBusAddonCard = 0xA3,
1879 MemoryArrayLocationCXLAddonCard = 0xA4
1886 MemoryArrayUseOther = 0x01,
1887 MemoryArrayUseUnknown = 0x02,
1888 MemoryArrayUseSystemMemory = 0x03,
1889 MemoryArrayUseVideoMemory = 0x04,
1890 MemoryArrayUseFlashMemory = 0x05,
1891 MemoryArrayUseNonVolatileRam = 0x06,
1892 MemoryArrayUseCacheMemory = 0x07
1899 MemoryErrorCorrectionOther = 0x01,
1900 MemoryErrorCorrectionUnknown = 0x02,
1901 MemoryErrorCorrectionNone = 0x03,
1902 MemoryErrorCorrectionParity = 0x04,
1903 MemoryErrorCorrectionSingleBitEcc = 0x05,
1904 MemoryErrorCorrectionMultiBitEcc = 0x06,
1905 MemoryErrorCorrectionCrc = 0x07
1919 UINT32 MaximumCapacity;
1920 UINT16 MemoryErrorInformationHandle;
1921 UINT16 NumberOfMemoryDevices;
1925 UINT64 ExtendedMaximumCapacity;
1932 MemoryFormFactorOther = 0x01,
1933 MemoryFormFactorUnknown = 0x02,
1934 MemoryFormFactorSimm = 0x03,
1935 MemoryFormFactorSip = 0x04,
1936 MemoryFormFactorChip = 0x05,
1937 MemoryFormFactorDip = 0x06,
1938 MemoryFormFactorZip = 0x07,
1939 MemoryFormFactorProprietaryCard = 0x08,
1940 MemoryFormFactorDimm = 0x09,
1941 MemoryFormFactorTsop = 0x0A,
1942 MemoryFormFactorRowOfChips = 0x0B,
1943 MemoryFormFactorRimm = 0x0C,
1944 MemoryFormFactorSodimm = 0x0D,
1945 MemoryFormFactorSrimm = 0x0E,
1946 MemoryFormFactorFbDimm = 0x0F,
1947 MemoryFormFactorDie = 0x10,
1948 MemoryFormFactorCamm = 0x11,
1957 MemoryTypeOther = 0x01,
1958 MemoryTypeUnknown = 0x02,
1959 MemoryTypeDram = 0x03,
1960 MemoryTypeEdram = 0x04,
1961 MemoryTypeVram = 0x05,
1962 MemoryTypeSram = 0x06,
1963 MemoryTypeRam = 0x07,
1964 MemoryTypeRom = 0x08,
1965 MemoryTypeFlash = 0x09,
1966 MemoryTypeEeprom = 0x0A,
1967 MemoryTypeFeprom = 0x0B,
1968 MemoryTypeEprom = 0x0C,
1969 MemoryTypeCdram = 0x0D,
1970 MemoryType3Dram = 0x0E,
1971 MemoryTypeSdram = 0x0F,
1972 MemoryTypeSgram = 0x10,
1973 MemoryTypeRdram = 0x11,
1974 MemoryTypeDdr = 0x12,
1975 MemoryTypeDdr2 = 0x13,
1976 MemoryTypeDdr2FbDimm = 0x14,
1977 MemoryTypeDdr3 = 0x18,
1978 MemoryTypeFbd2 = 0x19,
1979 MemoryTypeDdr4 = 0x1A,
1980 MemoryTypeLpddr = 0x1B,
1981 MemoryTypeLpddr2 = 0x1C,
1982 MemoryTypeLpddr3 = 0x1D,
1983 MemoryTypeLpddr4 = 0x1E,
1984 MemoryTypeLogicalNonVolatileDevice = 0x1F,
1985 MemoryTypeHBM = 0x20,
1986 MemoryTypeHBM2 = 0x21,
1987 MemoryTypeDdr5 = 0x22,
1988 MemoryTypeLpddr5 = 0x23,
1989 MemoryTypeHBM3 = 0x24,
1997 UINT16 Reserved : 1;
2000 UINT16 FastPaged : 1;
2001 UINT16 StaticColumn : 1;
2002 UINT16 PseudoStatic : 1;
2004 UINT16 Synchronous : 1;
2007 UINT16 WindowDram : 1;
2008 UINT16 CacheDram : 1;
2009 UINT16 Nonvolatile : 1;
2010 UINT16 Registered : 1;
2011 UINT16 Unbuffered : 1;
2019 MemoryTechnologyOther = 0x01,
2020 MemoryTechnologyUnknown = 0x02,
2021 MemoryTechnologyDram = 0x03,
2022 MemoryTechnologyNvdimmN = 0x04,
2023 MemoryTechnologyNvdimmF = 0x05,
2024 MemoryTechnologyNvdimmP = 0x06,
2029 MemoryTechnologyIntelOptanePersistentMemory = 0x07,
2044 UINT16 VolatileMemory : 1;
2045 UINT16 ByteAccessiblePersistentMemory : 1;
2046 UINT16 BlockAccessiblePersistentMemory : 1;
2066 UINT16 MemoryArrayHandle;
2067 UINT16 MemoryErrorInformationHandle;
2089 UINT32 ExtendedSize;
2095 UINT16 ConfiguredMemoryClockSpeed;
2099 UINT16 MinimumVoltage;
2100 UINT16 MaximumVoltage;
2101 UINT16 ConfiguredVoltage;
2108 UINT16 ModuleManufacturerID;
2109 UINT16 ModuleProductID;
2110 UINT16 MemorySubsystemControllerManufacturerID;
2111 UINT16 MemorySubsystemControllerProductID;
2112 UINT64 NonVolatileSize;
2113 UINT64 VolatileSize;
2119 UINT32 ExtendedSpeed;
2120 UINT32 ExtendedConfiguredMemorySpeed;
2124 UINT16 Pmic0ManufacturerID;
2125 UINT16 Pmic0RevisionNumber;
2126 UINT16 RcdManufacturerID;
2127 UINT16 RcdRevisionNumber;
2134 MemoryErrorOther = 0x01,
2135 MemoryErrorUnknown = 0x02,
2136 MemoryErrorOk = 0x03,
2137 MemoryErrorBadRead = 0x04,
2138 MemoryErrorParity = 0x05,
2139 MemoryErrorSigleBit = 0x06,
2140 MemoryErrorDoubleBit = 0x07,
2141 MemoryErrorMultiBit = 0x08,
2142 MemoryErrorNibble = 0x09,
2143 MemoryErrorChecksum = 0x0A,
2144 MemoryErrorCrc = 0x0B,
2145 MemoryErrorCorrectSingleBit = 0x0C,
2146 MemoryErrorCorrected = 0x0D,
2147 MemoryErrorUnCorrectable = 0x0E
2154 MemoryGranularityOther = 0x01,
2155 MemoryGranularityOtherUnknown = 0x02,
2156 MemoryGranularityDeviceLevel = 0x03,
2157 MemoryGranularityMemPartitionLevel = 0x04
2164 MemoryErrorOperationOther = 0x01,
2165 MemoryErrorOperationUnknown = 0x02,
2166 MemoryErrorOperationRead = 0x03,
2167 MemoryErrorOperationWrite = 0x04,
2168 MemoryErrorOperationPartialWrite = 0x05
2182 UINT32 VendorSyndrome;
2183 UINT32 MemoryArrayErrorAddress;
2184 UINT32 DeviceErrorAddress;
2185 UINT32 ErrorResolution;
2196 UINT32 StartingAddress;
2197 UINT32 EndingAddress;
2198 UINT16 MemoryArrayHandle;
2199 UINT8 PartitionWidth;
2203 UINT64 ExtendedStartingAddress;
2204 UINT64 ExtendedEndingAddress;
2215 UINT32 StartingAddress;
2216 UINT32 EndingAddress;
2217 UINT16 MemoryDeviceHandle;
2218 UINT16 MemoryArrayMappedAddressHandle;
2219 UINT8 PartitionRowPosition;
2220 UINT8 InterleavePosition;
2221 UINT8 InterleavedDataDepth;
2225 UINT64 ExtendedStartingAddress;
2226 UINT64 ExtendedEndingAddress;
2233 PointingDeviceTypeOther = 0x01,
2234 PointingDeviceTypeUnknown = 0x02,
2235 PointingDeviceTypeMouse = 0x03,
2236 PointingDeviceTypeTrackBall = 0x04,
2237 PointingDeviceTypeTrackPoint = 0x05,
2238 PointingDeviceTypeGlidePoint = 0x06,
2239 PointingDeviceTouchPad = 0x07,
2240 PointingDeviceTouchScreen = 0x08,
2241 PointingDeviceOpticalSensor = 0x09
2248 PointingDeviceInterfaceOther = 0x01,
2249 PointingDeviceInterfaceUnknown = 0x02,
2250 PointingDeviceInterfaceSerial = 0x03,
2251 PointingDeviceInterfacePs2 = 0x04,
2252 PointingDeviceInterfaceInfrared = 0x05,
2253 PointingDeviceInterfaceHpHil = 0x06,
2254 PointingDeviceInterfaceBusMouse = 0x07,
2255 PointingDeviceInterfaceADB = 0x08,
2256 PointingDeviceInterfaceBusMouseDB9 = 0xA0,
2257 PointingDeviceInterfaceBusMouseMicroDin = 0xA1,
2258 PointingDeviceInterfaceUsb = 0xA2,
2259 PointingDeviceInterfaceI2c = 0xA3,
2260 PointingDeviceInterfaceSpi = 0xA4
2274 UINT8 NumberOfButtons;
2281 PortableBatteryDeviceChemistryOther = 0x01,
2282 PortableBatteryDeviceChemistryUnknown = 0x02,
2283 PortableBatteryDeviceChemistryLeadAcid = 0x03,
2284 PortableBatteryDeviceChemistryNickelCadmium = 0x04,
2285 PortableBatteryDeviceChemistryNickelMetalHydride = 0x05,
2286 PortableBatteryDeviceChemistryLithiumIon = 0x06,
2287 PortableBatteryDeviceChemistryZincAir = 0x07,
2288 PortableBatteryDeviceChemistryLithiumPolymer = 0x08
2306 UINT16 DeviceCapacity;
2307 UINT16 DesignVoltage;
2309 UINT8 MaximumErrorInBatteryData;
2310 UINT16 SBDSSerialNumber;
2311 UINT16 SBDSManufactureDate;
2313 UINT8 DesignCapacityMultiplier;
2331 UINT16 TimerInterval;
2342 UINT8 HardwareSecuritySettings;
2355 UINT8 NextScheduledPowerOnMonth;
2356 UINT8 NextScheduledPowerOnDayOfMonth;
2357 UINT8 NextScheduledPowerOnHour;
2358 UINT8 NextScheduledPowerOnMinute;
2359 UINT8 NextScheduledPowerOnSecond;
2366 UINT8 VoltageProbeSite : 5;
2367 UINT8 VoltageProbeStatus : 3;
2380 UINT16 MaximumValue;
2381 UINT16 MinimumValue;
2386 UINT16 NominalValue;
2393 UINT8 CoolingDevice : 5;
2394 UINT8 CoolingDeviceStatus : 3;
2405 UINT16 TemperatureProbeHandle;
2407 UINT8 CoolingUnitGroup;
2409 UINT16 NominalSpeed;
2420 UINT8 TemperatureProbeSite : 5;
2421 UINT8 TemperatureProbeStatus : 3;
2434 UINT16 MaximumValue;
2435 UINT16 MinimumValue;
2440 UINT16 NominalValue;
2447 UINT8 ElectricalCurrentProbeSite : 5;
2448 UINT8 ElectricalCurrentProbeStatus : 3;
2461 UINT16 MaximumValue;
2462 UINT16 MinimumValue;
2467 UINT16 NominalValue;
2503 BootInformationStatusNoError = 0x00,
2504 BootInformationStatusNoBootableMedia = 0x01,
2505 BootInformationStatusNormalOSFailedLoading = 0x02,
2506 BootInformationStatusFirmwareDetectedFailure = 0x03,
2507 BootInformationStatusOSDetectedFailure = 0x04,
2508 BootInformationStatusUserRequestedBoot = 0x05,
2509 BootInformationStatusSystemSecurityViolation = 0x06,
2510 BootInformationStatusPreviousRequestedImage = 0x07,
2511 BootInformationStatusWatchdogTimerExpired = 0x08,
2512 BootInformationStatusStartReserved = 0x09,
2513 BootInformationStatusStartOemSpecific = 0x80,
2514 BootInformationStatusStartProductSpecific = 0xC0
2545 UINT32 VendorSyndrome;
2546 UINT64 MemoryArrayErrorAddress;
2547 UINT64 DeviceErrorAddress;
2548 UINT32 ErrorResolution;
2555 ManagementDeviceTypeOther = 0x01,
2556 ManagementDeviceTypeUnknown = 0x02,
2557 ManagementDeviceTypeLm75 = 0x03,
2558 ManagementDeviceTypeLm78 = 0x04,
2559 ManagementDeviceTypeLm79 = 0x05,
2560 ManagementDeviceTypeLm80 = 0x06,
2561 ManagementDeviceTypeLm81 = 0x07,
2562 ManagementDeviceTypeAdm9240 = 0x08,
2563 ManagementDeviceTypeDs1780 = 0x09,
2564 ManagementDeviceTypeMaxim1617 = 0x0A,
2565 ManagementDeviceTypeGl518Sm = 0x0B,
2566 ManagementDeviceTypeW83781D = 0x0C,
2567 ManagementDeviceTypeHt82H791 = 0x0D
2574 ManagementDeviceAddressTypeOther = 0x01,
2575 ManagementDeviceAddressTypeUnknown = 0x02,
2576 ManagementDeviceAddressTypeIOPort = 0x03,
2577 ManagementDeviceAddressTypeMemory = 0x04,
2578 ManagementDeviceAddressTypeSmbus = 0x05
2605 UINT16 ManagementDeviceHandle;
2606 UINT16 ComponentHandle;
2607 UINT16 ThresholdHandle;
2618 UINT16 LowerThresholdNonCritical;
2619 UINT16 UpperThresholdNonCritical;
2620 UINT16 LowerThresholdCritical;
2621 UINT16 UpperThresholdCritical;
2622 UINT16 LowerThresholdNonRecoverable;
2623 UINT16 UpperThresholdNonRecoverable;
2631 UINT16 DeviceHandle;
2638 MemoryChannelTypeOther = 0x01,
2639 MemoryChannelTypeUnknown = 0x02,
2640 MemoryChannelTypeRambus = 0x03,
2641 MemoryChannelTypeSyncLink = 0x04
2654 UINT8 MaximumChannelLoad;
2655 UINT8 MemoryDeviceCount;
2663 IPMIDeviceInfoInterfaceTypeUnknown = 0x00,
2684 UINT8 IPMISpecificationRevision;
2685 UINT8 I2CSlaveAddress;
2686 UINT8 NVStorageDeviceAddress;
2688 UINT8 BaseAddressModifier_InterruptInfo;
2689 UINT8 InterruptNumber;
2696 UINT16 PowerSupplyHotReplaceable : 1;
2697 UINT16 PowerSupplyPresent : 1;
2698 UINT16 PowerSupplyUnplugged : 1;
2699 UINT16 InputVoltageRangeSwitch : 4;
2700 UINT16 PowerSupplyStatus : 3;
2701 UINT16 PowerSupplyType : 4;
2702 UINT16 Reserved : 2;
2713 UINT8 PowerUnitGroup;
2721 UINT16 MaxPowerCapacity;
2723 UINT16 InputVoltageProbeHandle;
2724 UINT16 CoolingDeviceHandle;
2725 UINT16 InputCurrentProbeHandle;
2733 UINT16 ReferencedHandle;
2734 UINT8 ReferencedOffset;
2747 UINT8 NumberOfAdditionalInformationEntries;
2755 OnBoardDeviceExtendedTypeOther = 0x01,
2756 OnBoardDeviceExtendedTypeUnknown = 0x02,
2757 OnBoardDeviceExtendedTypeVideo = 0x03,
2758 OnBoardDeviceExtendedTypeScsiController = 0x04,
2759 OnBoardDeviceExtendedTypeEthernet = 0x05,
2760 OnBoardDeviceExtendedTypeTokenRing = 0x06,
2761 OnBoardDeviceExtendedTypeSound = 0x07,
2762 OnBoardDeviceExtendedTypePATAController = 0x08,
2763 OnBoardDeviceExtendedTypeSATAController = 0x09,
2764 OnBoardDeviceExtendedTypeSASController = 0x0A,
2765 OnBoardDeviceExtendedTypeWirelessLAN = 0x0B,
2766 OnBoardDeviceExtendedTypeBluetooth = 0x0C,
2767 OnBoardDeviceExtendedTypeWWAN = 0x0D,
2768 OnBoardDeviceExtendedTypeeMMC = 0x0E,
2769 OnBoardDeviceExtendedTypeNvme = 0x0F,
2770 OnBoardDeviceExtendedTypeUfc = 0x10
2785 UINT8 DeviceTypeInstance;
2786 UINT16 SegmentGroupNum;
2796 UINT8 ProtocolTypeDataLen;
2797 UINT8 ProtocolTypeData[1];
2806 MCHostInterfaceTypeKCS = 0x02,
2807 MCHostInterfaceType8250_UARTRegisterCompatible = 0x03,
2808 MCHostInterfaceType16450_UARTRegisterCompatible = 0x04,
2809 MCHostInterfaceType16550_16550A_UARTRegisterCompatible = 0x05,
2810 MCHostInterfaceType16650_16650A_UARTRegisterCompatible = 0x06,
2811 MCHostInterfaceType16750_16750A_UARTRegisterCompatible = 0x07,
2812 MCHostInterfaceType16850_16850A_UARTRegisterCompatible = 0x08,
2813 MCHostInterfaceTypeI2C_SMBUS = 0x09,
2814 MCHostInterfaceTypeI3C = 0x0A,
2815 MCHostInterfaceTypePCIeVDM = 0x0B,
2816 MCHostInterfaceTypeMMBI = 0x0C,
2817 MCHostInterfaceTypePCC = 0x0D,
2818 MCHostInterfaceTypeUCIe = 0x0E,
2819 MCHostInterfaceTypeUSB = 0x0F,
2821 MCHostInterfaceTypeNetworkHostInterface = 0x40,
2822 MCHostInterfaceTypeOemDefined = 0xF0
2829 MCHostInterfaceProtocolTypeIPMI = 0x02,
2830 MCHostInterfaceProtocolTypeMCTP = 0x03,
2831 MCHostInterfaceProtocolTypeRedfishOverIP = 0x04,
2832 MCHostInterfaceProtocolTypeOemDefined = 0xF0
2855 UINT8 InterfaceTypeSpecificDataLength;
2856 UINT8 InterfaceTypeSpecificData[4];
2863 ProcessorSpecificBlockArchTypeReserved = 0x00,
2864 ProcessorSpecificBlockArchTypeIa32 = 0x01,
2865 ProcessorSpecificBlockArchTypeX64 = 0x02,
2866 ProcessorSpecificBlockArchTypeItanium = 0x03,
2867 ProcessorSpecificBlockArchTypeAarch32 = 0x04,
2868 ProcessorSpecificBlockArchTypeAarch64 = 0x05,
2869 ProcessorSpecificBlockArchTypeRiscVRV32 = 0x06,
2870 ProcessorSpecificBlockArchTypeRiscVRV64 = 0x07,
2871 ProcessorSpecificBlockArchTypeRiscVRV128 = 0x08,
2872 ProcessorSpecificBlockArchTypeLoongArch32 = 0x09,
2873 ProcessorSpecificBlockArchTypeLoongArch64 = 0x0A
2881 UINT8 ProcessorArchType;
2917 UINT8 MajorSpecVersion;
2918 UINT8 MinorSpecVersion;
2919 UINT32 FirmwareVersion1;
2920 UINT32 FirmwareVersion2;
2922 UINT64 Characteristics;
2930 VersionFormatTypeFreeForm = 0x00,
2931 VersionFormatTypeMajorMinor = 0x01,
2932 VersionFormatType32BitHex = 0x02,
2933 VersionFormatType64BitHex = 0x03,
2934 VersionFormatTypeReserved = 0x04,
2942 FirmwareIdFormatTypeFreeForm = 0x00,
2943 FirmwareIdFormatTypeUuid = 0x01,
2944 FirmwareIdFormatTypeReserved = 0x04,
2952 UINT16 Updatable : 1;
2953 UINT16 WriteProtected : 1;
2954 UINT16 Reserved : 14;
2961 FirmwareInventoryStateOther = 0x01,
2962 FirmwareInventoryStateUnknown = 0x02,
2963 FirmwareInventoryStateDisabled = 0x03,
2964 FirmwareInventoryStateEnabled = 0x04,
2965 FirmwareInventoryStateAbsent = 0x05,
2966 FirmwareInventoryStateStandbyOffline = 0x06,
2967 FirmwareInventoryStateStandbySpare = 0x07,
2968 FirmwareInventoryStateUnavailableOffline = 0x08
2997 UINT8 AssociatedComponentCount;
3008 StringPropertyIdNone = 0x0000,
3009 StringPropertyIdDevicePath = 0x0001,
3010 StringPropertyIdReserved = 0x0002,
MEMORY_ERROR_DETECT_METHOD
FIRMWARE_INVENTORY_FIRMWARE_ID_FORMAT_TYPE
@ InventoryFirmwareIdFormatTypeOem
0x04 - 0x7F are reserved
@ MemoryTypeMrDimm
SMBIOS spec 3.9.0 CR248.
@ IPMIDeviceInfoInterfaceTypeSMIC
The Server Management Interface Chip.
@ IPMIDeviceInfoInterfaceTypeBT
The Block Transfer.
@ IPMIDeviceInfoInterfaceTypeKCS
The Keyboard Controller Style.
@ IPMIDeviceInfoInterfaceTypeSSIF
SMBus System Interface.
MISC_MANAGEMENT_DEVICE_TYPE
@ SlotPhysicalWidth12X
Or X12.
@ SlotPhysicalWidth8X
Or X8.
@ SlotPhysicalWidth1X
Or X1.
@ SlotPhysicalWidth2X
Or X2.
@ SlotPhysicalWidth32X
Or X32.
@ SlotPhysicalWidth16X
Or X16.
@ SlotPhysicalWidth4X
Or X4.
MC_HOST_INTERFACE_PROTOCOL_TYPE
MISC_BOOT_INFORMATION_STATUS_DATA_TYPE
MISC_CHASSIS_SECURITY_STATE
@ MemoryTechnologyMrDimmDeprecated
SMBIOS spec 3.9.0 CR248.
@ ProcessorUpgradeSocketA
Socket 462.
@ ProcessorUpgradePiggyBack
Replaceable.
@ ProcessorUpgradeSocketLGA1155
SMBIOS spec 2.8.0 updated the name.
BUILTIN_POINTING_DEVICE_INTERFACE
@ PortTypeMfdp
Multi-Function Display Port.
BUILTIN_POINTING_DEVICE_TYPE
@ SlotDataBusWidth12X
Or X12.
@ SlotDataBusWidth16X
Or X16.
@ SlotDataBusWidth1X
Or X1.
@ SlotDataBusWidth8X
Or X8.
@ SlotDataBusWidth32X
Or X32.
@ SlotDataBusWidth2X
Or X2.
@ SlotDataBusWidth4X
Or X4.
@ ChassisHeightUseRackHeight
Enclosure Height is specified at offset 16h+(n*m)
PROCESSOR_SPECIFIC_BLOCK_ARCH_TYPE
MISC_MANAGEMENT_DEVICE_ADDRESS_TYPE
@ ProcessorFamilyIntelCoreSolo
SMBIOS spec 2.6 updated this value.
@ ProcessorFamilyViaC7M
Smbios spec 3.8 updated this value.
@ ProcessorFamilyAmdASeries
SMBIOS spec 2.8.0 updated the name.
UINT8 SMBIOS_TABLE_STRING
@ CacheErrorSingleBit
ECC.
MEMORY_SUPPORT_INTERLEAVE_TYPE
PORTABLE_BATTERY_DEVICE_CHEMISTRY
@ SlotTypeOCPNIC30LargeFormFactor
LFF.
@ SlotTypePCIExpressGen5SFF_8639
U.2.
@ SlotTypePCIExpressGen4SFF_8639
U.2.
@ SlotTypePciExpressMini52pinWithBSKO
PCI Express Mini 52-pin (CEM spec. 2.0) with bottom-side keep-outs.
@ SlotTypePciExpressMini76pin
PCI Express Mini 76-pin (CEM spec. 2.0) Corresponds to Display-Mini card.
@ SlotTypePciExpressMini52pinWithoutBSKO
PCI Express Mini 52-pin (CEM spec. 2.0) without bottom-side keep-outs.
@ SlotTypeOCPNIC30SmallFormFactor
SFF.
ONBOARD_DEVICE_EXTENDED_INFO_TYPE
@ MemoryFormFactorCsoDimm
SMBIOS spec 3.9.0 CR244.
@ MemoryFormFactorCuDimm
SMBIOS spec 3.9.0 CR244.
FIRMWARE_INVENTORY_VERSION_FORMAT_TYPE
@ VersionFormatTypeOem
0x04 - 0x7F are reserved
@ StringPropertyIdOem
BIOS vendor 0x8000 - 0xBFFF.
@ StringPropertyIdBiosVendor
Reserved 0x0002 - 0x7FFF.
@ EventLogTypeAvailForSys
0x80 - 0xFE
@ EventLogTypeUnused
0x18 - 0x7F
UINT8 LogType
The enumeration value from EVENT_LOG_TYPE_DATA.
UINT8 InstalledOrEnabledSize
Size (n), where 2**n is the size in MB.
UINT8 ProcessorVoltageReserved
Bits 4-6, must be zero.
UINT8 ProcessorVoltageCapabilityReserved
Bit 3, must be zero.
UINT8 Use
The enumeration value from MEMORY_ARRAY_USE.
UINT8 MemoryErrorCorrection
The enumeration value from MEMORY_ERROR_CORRECTION.
UINT8 Location
The enumeration value from MEMORY_ARRAY_LOCATION.
UINT8 MemoryType
The enumeration value from MEMORY_DEVICE_TYPE.
UINT8 FormFactor
The enumeration value from MEMORY_FORM_FACTOR.
UINT8 MemoryTechnology
The enumeration value from MEMORY_DEVICE_TECHNOLOGY.
UINT8 ErrorGranularity
The enumeration value from MEMORY_ERROR_GRANULARITY.
UINT8 ErrorType
The enumeration value from MEMORY_ERROR_TYPE.
UINT8 ErrorOperation
The enumeration value from MEMORY_ERROR_OPERATION.
UINT8 WakeUpType
The enumeration value from MISC_SYSTEM_WAKEUP_TYPE.
UINT8 Type
The enumeration value from BUILTIN_POINTING_DEVICE_TYPE.
UINT8 Interface
The enumeration value from BUILTIN_POINTING_DEVICE_INTERFACE.
UINT8 DeviceChemistry
The enumeration value from PORTABLE_BATTERY_DEVICE_CHEMISTRY.
UINT8 BoardType
The enumeration value from BASE_BOARD_TYPE.
UINT8 BootStatus
The enumeration value from MISC_BOOT_INFORMATION_STATUS_DATA_TYPE.
UINT8 ErrorGranularity
The enumeration value from MEMORY_ERROR_GRANULARITY.
UINT8 ErrorType
The enumeration value from MEMORY_ERROR_TYPE.
UINT8 ErrorOperation
The enumeration value from MEMORY_ERROR_OPERATION.
UINT8 AddressType
The enumeration value from MISC_MANAGEMENT_DEVICE_ADDRESS_TYPE.
UINT8 Type
The enumeration value from MISC_MANAGEMENT_DEVICE_TYPE.
UINT8 InterfaceType
The enumeration value from BMC_INTERFACE_TYPE.
UINT8 SecurityStatus
The enumeration value from MISC_CHASSIS_SECURITY_STATE.
UINT8 ThermalState
The enumeration value from MISC_CHASSIS_STATE.
UINT8 BootupState
The enumeration value from MISC_CHASSIS_STATE.
UINT8 PowerSupplyState
The enumeration value from MISC_CHASSIS_STATE.
UINT8 DeviceType
The enumeration value from ONBOARD_DEVICE_EXTENDED_INFO_TYPE.
UINT8 InterfaceType
The enumeration value from MC_HOST_INTERFACE_TYPE.
PROCESSOR_SPECIFIC_BLOCK ProcessorSpecificBlock
UINT8 FirmwareIdFormat
The enumeration value from FIRMWARE_INVENTORY_FIRMWARE_ID_FORMAT_TYPE.
UINT8 FirmwareVersionFormat
The enumeration value from FIRMWARE_INVENTORY_VERSION_FORMAT_TYPE.
UINT8 State
The enumeration value from FIRMWARE_INVENTORY_STATE.
UINT16 StringPropertyId
The enumeration value from STRING_PROPERTY_ID.
UINT8 ProcessorUpgrade
The enumeration value from PROCESSOR_UPGRADE.
UINT8 ProcessorType
The enumeration value from PROCESSOR_TYPE_DATA.
UINT8 ProcessorFamily
The enumeration value from PROCESSOR_FAMILY_DATA.
UINT8 SupportInterleave
The enumeration value from MEMORY_SUPPORT_INTERLEAVE_TYPE.
UINT8 ErrDetectMethod
The enumeration value from MEMORY_ERROR_DETECT_METHOD.
UINT8 CurrentInterleave
The enumeration value from MEMORY_SUPPORT_INTERLEAVE_TYPE .
UINT8 SystemCacheType
The enumeration value from CACHE_TYPE_DATA.
UINT8 Associativity
The enumeration value from CACHE_ASSOCIATIVITY_DATA.
UINT8 ErrorCorrectionType
The enumeration value from CACHE_ERROR_TYPE_DATA.
UINT8 PortType
The enumeration value from MISC_PORT_TYPE.
UINT8 ExternalConnectorType
The enumeration value from MISC_PORT_CONNECTOR_TYPE.
UINT8 InternalConnectorType
The enumeration value from MISC_PORT_CONNECTOR_TYPE.
UINT8 SlotHeight
The enumeration value from MISC_SLOT_HEIGHT.
UINT8 SlotType
The enumeration value from MISC_SLOT_TYPE.
UINT8 SlotDataBusWidth
The enumeration value from MISC_SLOT_DATA_BUS_WIDTH.
UINT8 CurrentUsage
The enumeration value from MISC_SLOT_USAGE.
UINT8 SlotLength
The enumeration value from MISC_SLOT_LENGTH.
UINT16 Reserved2
Set to 0.
UINT8 CpuStatus
Indicates the status of the processor.
UINT8 SocketPopulated
Indicates if the processor socket is populated or not.
UINT8 Reserved1
Reserved for future use. Must be set to zero.
UINT8 Reserved2
Reserved for future use. Must be set to zero.