TianoCore EDK2 master
Loading...
Searching...
No Matches
SmBios.h File Reference

Go to the source code of this file.

Data Structures

struct  SMBIOS_TABLE_ENTRY_POINT
 
struct  SMBIOS_TABLE_3_0_ENTRY_POINT
 
struct  SMBIOS_STRUCTURE
 
struct  MISC_BIOS_CHARACTERISTICS
 
struct  MBCE_BIOS_RESERVED
 
struct  MBCE_SYSTEM_RESERVED
 
struct  MISC_BIOS_CHARACTERISTICS_EXTENSION
 
struct  EXTENDED_BIOS_ROM_SIZE
 
struct  SMBIOS_TABLE_TYPE0
 
struct  SMBIOS_TABLE_TYPE1
 
struct  BASE_BOARD_FEATURE_FLAGS
 
struct  SMBIOS_TABLE_TYPE2
 
struct  CONTAINED_ELEMENT
 
struct  SMBIOS_TABLE_TYPE3
 
struct  PROCESSOR_VOLTAGE
 
struct  PROCESSOR_SIGNATURE
 
struct  PROCESSOR_FEATURE_FLAGS
 
struct  PROCESSOR_CHARACTERISTIC_FLAGS
 
union  PROCESSOR_STATUS_DATA
 
struct  PROCESSOR_ID_DATA
 
struct  SMBIOS_TABLE_TYPE4
 
struct  MEMORY_ERROR_CORRECT_CAPABILITY
 
struct  MEMORY_SPEED_TYPE
 
struct  SMBIOS_TABLE_TYPE5
 
struct  MEMORY_CURRENT_TYPE
 
struct  MEMORY_INSTALLED_ENABLED_SIZE
 
struct  SMBIOS_TABLE_TYPE6
 
struct  CACHE_SRAM_TYPE_DATA
 
struct  SMBIOS_TABLE_TYPE7
 
struct  SMBIOS_TABLE_TYPE8
 
struct  MISC_SLOT_CHARACTERISTICS1
 
struct  MISC_SLOT_CHARACTERISTICS2
 
struct  MISC_SLOT_PEER_GROUP
 
struct  SMBIOS_TABLE_TYPE9
 
struct  SMBIOS_TABLE_TYPE9_EXTENDED
 
struct  DEVICE_STRUCT
 
struct  SMBIOS_TABLE_TYPE10
 
struct  SMBIOS_TABLE_TYPE11
 
struct  SMBIOS_TABLE_TYPE12
 
struct  SMBIOS_TABLE_TYPE13
 
struct  GROUP_STRUCT
 
struct  SMBIOS_TABLE_TYPE14
 
struct  EVENT_LOG_TYPE
 
struct  SMBIOS_TABLE_TYPE15
 
struct  SMBIOS_TABLE_TYPE16
 
struct  MEMORY_DEVICE_TYPE_DETAIL
 
union  MEMORY_DEVICE_OPERATING_MODE_CAPABILITY
 
struct  SMBIOS_TABLE_TYPE17
 
struct  SMBIOS_TABLE_TYPE18
 
struct  SMBIOS_TABLE_TYPE19
 
struct  SMBIOS_TABLE_TYPE20
 
struct  SMBIOS_TABLE_TYPE21
 
struct  SMBIOS_TABLE_TYPE22
 
struct  SMBIOS_TABLE_TYPE23
 
struct  SMBIOS_TABLE_TYPE24
 
struct  SMBIOS_TABLE_TYPE25
 
struct  MISC_VOLTAGE_PROBE_LOCATION
 
struct  SMBIOS_TABLE_TYPE26
 
struct  MISC_COOLING_DEVICE_TYPE
 
struct  SMBIOS_TABLE_TYPE27
 
struct  MISC_TEMPERATURE_PROBE_LOCATION
 
struct  SMBIOS_TABLE_TYPE28
 
struct  MISC_ELECTRICAL_CURRENT_PROBE_LOCATION
 
struct  SMBIOS_TABLE_TYPE29
 
struct  SMBIOS_TABLE_TYPE30
 
struct  SMBIOS_TABLE_TYPE31
 
struct  SMBIOS_TABLE_TYPE32
 
struct  SMBIOS_TABLE_TYPE33
 
struct  SMBIOS_TABLE_TYPE34
 
struct  SMBIOS_TABLE_TYPE35
 
struct  SMBIOS_TABLE_TYPE36
 
struct  MEMORY_DEVICE
 
struct  SMBIOS_TABLE_TYPE37
 
struct  SMBIOS_TABLE_TYPE38
 
struct  SYS_POWER_SUPPLY_CHARACTERISTICS
 
struct  SMBIOS_TABLE_TYPE39
 
struct  ADDITIONAL_INFORMATION_ENTRY
 
struct  SMBIOS_TABLE_TYPE40
 
struct  SMBIOS_TABLE_TYPE41
 
struct  MC_HOST_INTERFACE_PROTOCOL_RECORD
 
struct  SMBIOS_TABLE_TYPE42
 
struct  PROCESSOR_SPECIFIC_BLOCK
 
struct  SMBIOS_TABLE_TYPE44
 
struct  SMBIOS_TABLE_TYPE43
 
struct  FIRMWARE_CHARACTERISTICS
 
struct  SMBIOS_TABLE_TYPE45
 
struct  SMBIOS_TABLE_TYPE46
 
struct  SMBIOS_TABLE_TYPE126
 
struct  SMBIOS_TABLE_TYPE127
 
union  SMBIOS_STRUCTURE_POINTER
 

Macros

#define SMBIOS_HANDLE_RESERVED_BEGIN   0xFF00
 
#define SMBIOS_HANDLE_PI_RESERVED   0xFFFE
 
#define SMBIOS_STRING_MAX_LENGTH   64
 
#define SMBIOS_TABLE_MAX_LENGTH   0xFFFF
 
#define SMBIOS_3_0_TABLE_MAX_LENGTH   0xFFFFFFFF
 
#define SMBIOS_TYPE_BIOS_INFORMATION   0
 
#define SMBIOS_TYPE_SYSTEM_INFORMATION   1
 
#define SMBIOS_TYPE_BASEBOARD_INFORMATION   2
 
#define SMBIOS_TYPE_SYSTEM_ENCLOSURE   3
 
#define SMBIOS_TYPE_PROCESSOR_INFORMATION   4
 
#define SMBIOS_TYPE_MEMORY_CONTROLLER_INFORMATION   5
 
#define SMBIOS_TYPE_MEMORY_MODULE_INFORMATON   6
 
#define SMBIOS_TYPE_CACHE_INFORMATION   7
 
#define SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION   8
 
#define SMBIOS_TYPE_SYSTEM_SLOTS   9
 
#define SMBIOS_TYPE_ONBOARD_DEVICE_INFORMATION   10
 
#define SMBIOS_TYPE_OEM_STRINGS   11
 
#define SMBIOS_TYPE_SYSTEM_CONFIGURATION_OPTIONS   12
 
#define SMBIOS_TYPE_BIOS_LANGUAGE_INFORMATION   13
 
#define SMBIOS_TYPE_GROUP_ASSOCIATIONS   14
 
#define SMBIOS_TYPE_SYSTEM_EVENT_LOG   15
 
#define SMBIOS_TYPE_PHYSICAL_MEMORY_ARRAY   16
 
#define SMBIOS_TYPE_MEMORY_DEVICE   17
 
#define SMBIOS_TYPE_32BIT_MEMORY_ERROR_INFORMATION   18
 
#define SMBIOS_TYPE_MEMORY_ARRAY_MAPPED_ADDRESS   19
 
#define SMBIOS_TYPE_MEMORY_DEVICE_MAPPED_ADDRESS   20
 
#define SMBIOS_TYPE_BUILT_IN_POINTING_DEVICE   21
 
#define SMBIOS_TYPE_PORTABLE_BATTERY   22
 
#define SMBIOS_TYPE_SYSTEM_RESET   23
 
#define SMBIOS_TYPE_HARDWARE_SECURITY   24
 
#define SMBIOS_TYPE_SYSTEM_POWER_CONTROLS   25
 
#define SMBIOS_TYPE_VOLTAGE_PROBE   26
 
#define SMBIOS_TYPE_COOLING_DEVICE   27
 
#define SMBIOS_TYPE_TEMPERATURE_PROBE   28
 
#define SMBIOS_TYPE_ELECTRICAL_CURRENT_PROBE   29
 
#define SMBIOS_TYPE_OUT_OF_BAND_REMOTE_ACCESS   30
 
#define SMBIOS_TYPE_BOOT_INTEGRITY_SERVICE   31
 
#define SMBIOS_TYPE_SYSTEM_BOOT_INFORMATION   32
 
#define SMBIOS_TYPE_64BIT_MEMORY_ERROR_INFORMATION   33
 
#define SMBIOS_TYPE_MANAGEMENT_DEVICE   34
 
#define SMBIOS_TYPE_MANAGEMENT_DEVICE_COMPONENT   35
 
#define SMBIOS_TYPE_MANAGEMENT_DEVICE_THRESHOLD_DATA   36
 
#define SMBIOS_TYPE_MEMORY_CHANNEL   37
 
#define SMBIOS_TYPE_IPMI_DEVICE_INFORMATION   38
 
#define SMBIOS_TYPE_SYSTEM_POWER_SUPPLY   39
 
#define SMBIOS_TYPE_ADDITIONAL_INFORMATION   40
 
#define SMBIOS_TYPE_ONBOARD_DEVICES_EXTENDED_INFORMATION   41
 
#define SMBIOS_TYPE_MANAGEMENT_CONTROLLER_HOST_INTERFACE   42
 
#define SMBIOS_TYPE_TPM_DEVICE   43
 
#define SMBIOS_TYPE_PROCESSOR_ADDITIONAL_INFORMATION   44
 
#define SMBIOS_TYPE_FIRMWARE_INVENTORY_INFORMATION   45
 
#define SMBIOS_TYPE_STRING_PROPERTY_INFORMATION   46
 
#define SMBIOS_TYPE_INACTIVE   0x007E
 
#define SMBIOS_TYPE_END_OF_TABLE   0x007F
 
#define SMBIOS_OEM_BEGIN   128
 
#define SMBIOS_OEM_END   255
 
#define SMBIOS_ANCHOR_STRING   "_SM_"
 
#define SMBIOS_ANCHOR_STRING_LENGTH   4
 
#define SMBIOS_3_0_ANCHOR_STRING   "_SM3_"
 
#define SMBIOS_3_0_ANCHOR_STRING_LENGTH   5
 

Typedefs

typedef UINT8 SMBIOS_TYPE
 
typedef UINT16 SMBIOS_HANDLE
 
typedef UINT8 SMBIOS_TABLE_STRING
 

Enumerations

enum  MISC_SYSTEM_WAKEUP_TYPE {
  SystemWakeupTypeReserved = 0x00 , SystemWakeupTypeOther = 0x01 , SystemWakeupTypeUnknown = 0x02 , SystemWakeupTypeApmTimer = 0x03 ,
  SystemWakeupTypeModemRing = 0x04 , SystemWakeupTypeLanRemote = 0x05 , SystemWakeupTypePowerSwitch = 0x06 , SystemWakeupTypePciPme = 0x07 ,
  SystemWakeupTypeAcPowerRestored = 0x08
}
 
enum  BASE_BOARD_TYPE {
  BaseBoardTypeUnknown = 0x1 , BaseBoardTypeOther = 0x2 , BaseBoardTypeServerBlade = 0x3 , BaseBoardTypeConnectivitySwitch = 0x4 ,
  BaseBoardTypeSystemManagementModule = 0x5 , BaseBoardTypeProcessorModule = 0x6 , BaseBoardTypeIOModule = 0x7 , BaseBoardTypeMemoryModule = 0x8 ,
  BaseBoardTypeDaughterBoard = 0x9 , BaseBoardTypeMotherBoard = 0xA , BaseBoardTypeProcessorMemoryModule = 0xB , BaseBoardTypeProcessorIOModule = 0xC ,
  BaseBoardTypeInterconnectBoard = 0xD
}
 
enum  MISC_CHASSIS_TYPE {
  MiscChassisTypeOther = 0x01 , MiscChassisTypeUnknown = 0x02 , MiscChassisTypeDeskTop = 0x03 , MiscChassisTypeLowProfileDesktop = 0x04 ,
  MiscChassisTypePizzaBox = 0x05 , MiscChassisTypeMiniTower = 0x06 , MiscChassisTypeTower = 0x07 , MiscChassisTypePortable = 0x08 ,
  MiscChassisTypeLapTop = 0x09 , MiscChassisTypeNotebook = 0x0A , MiscChassisTypeHandHeld = 0x0B , MiscChassisTypeDockingStation = 0x0C ,
  MiscChassisTypeAllInOne = 0x0D , MiscChassisTypeSubNotebook = 0x0E , MiscChassisTypeSpaceSaving = 0x0F , MiscChassisTypeLunchBox = 0x10 ,
  MiscChassisTypeMainServerChassis = 0x11 , MiscChassisTypeExpansionChassis = 0x12 , MiscChassisTypeSubChassis = 0x13 , MiscChassisTypeBusExpansionChassis = 0x14 ,
  MiscChassisTypePeripheralChassis = 0x15 , MiscChassisTypeRaidChassis = 0x16 , MiscChassisTypeRackMountChassis = 0x17 , MiscChassisTypeSealedCasePc = 0x18 ,
  MiscChassisMultiSystemChassis = 0x19 , MiscChassisCompactPCI = 0x1A , MiscChassisAdvancedTCA = 0x1B , MiscChassisBlade = 0x1C ,
  MiscChassisBladeEnclosure = 0x1D , MiscChassisTablet = 0x1E , MiscChassisConvertible = 0x1F , MiscChassisDetachable = 0x20 ,
  MiscChassisIoTGateway = 0x21 , MiscChassisEmbeddedPc = 0x22 , MiscChassisMiniPc = 0x23 , MiscChassisStickPc = 0x24
}
 
enum  MISC_CHASSIS_STATE {
  ChassisStateOther = 0x01 , ChassisStateUnknown = 0x02 , ChassisStateSafe = 0x03 , ChassisStateWarning = 0x04 ,
  ChassisStateCritical = 0x05 , ChassisStateNonRecoverable = 0x06
}
 
enum  MISC_CHASSIS_SECURITY_STATE {
  ChassisSecurityStatusOther = 0x01 , ChassisSecurityStatusUnknown = 0x02 , ChassisSecurityStatusNone = 0x03 , ChassisSecurityStatusExternalInterfaceLockedOut = 0x04 ,
  ChassisSecurityStatusExternalInterfaceLockedEnabled = 0x05
}
 
enum  PROCESSOR_TYPE_DATA {
  ProcessorOther = 0x01 , ProcessorUnknown = 0x02 , CentralProcessor = 0x03 , MathProcessor = 0x04 ,
  DspProcessor = 0x05 , VideoProcessor = 0x06
}
 
enum  PROCESSOR_FAMILY_DATA {
  ProcessorFamilyOther = 0x01 , ProcessorFamilyUnknown = 0x02 , ProcessorFamily8086 = 0x03 , ProcessorFamily80286 = 0x04 ,
  ProcessorFamilyIntel386 = 0x05 , ProcessorFamilyIntel486 = 0x06 , ProcessorFamily8087 = 0x07 , ProcessorFamily80287 = 0x08 ,
  ProcessorFamily80387 = 0x09 , ProcessorFamily80487 = 0x0A , ProcessorFamilyPentium = 0x0B , ProcessorFamilyPentiumPro = 0x0C ,
  ProcessorFamilyPentiumII = 0x0D , ProcessorFamilyPentiumMMX = 0x0E , ProcessorFamilyCeleron = 0x0F , ProcessorFamilyPentiumIIXeon = 0x10 ,
  ProcessorFamilyPentiumIII = 0x11 , ProcessorFamilyM1 = 0x12 , ProcessorFamilyM2 = 0x13 , ProcessorFamilyIntelCeleronM = 0x14 ,
  ProcessorFamilyIntelPentium4Ht = 0x15 , ProcessorFamilyIntel = 0x16 , ProcessorFamilyAmdDuron = 0x18 , ProcessorFamilyK5 = 0x19 ,
  ProcessorFamilyK6 = 0x1A , ProcessorFamilyK6_2 = 0x1B , ProcessorFamilyK6_3 = 0x1C , ProcessorFamilyAmdAthlon = 0x1D ,
  ProcessorFamilyAmd29000 = 0x1E , ProcessorFamilyK6_2Plus = 0x1F , ProcessorFamilyPowerPC = 0x20 , ProcessorFamilyPowerPC601 = 0x21 ,
  ProcessorFamilyPowerPC603 = 0x22 , ProcessorFamilyPowerPC603Plus = 0x23 , ProcessorFamilyPowerPC604 = 0x24 , ProcessorFamilyPowerPC620 = 0x25 ,
  ProcessorFamilyPowerPCx704 = 0x26 , ProcessorFamilyPowerPC750 = 0x27 , ProcessorFamilyIntelCoreDuo = 0x28 , ProcessorFamilyIntelCoreDuoMobile = 0x29 ,
  ProcessorFamilyIntelCoreSoloMobile = 0x2A , ProcessorFamilyIntelAtom = 0x2B , ProcessorFamilyIntelCoreM = 0x2C , ProcessorFamilyIntelCorem3 = 0x2D ,
  ProcessorFamilyIntelCorem5 = 0x2E , ProcessorFamilyIntelCorem7 = 0x2F , ProcessorFamilyAlpha = 0x30 , ProcessorFamilyAlpha21064 = 0x31 ,
  ProcessorFamilyAlpha21066 = 0x32 , ProcessorFamilyAlpha21164 = 0x33 , ProcessorFamilyAlpha21164PC = 0x34 , ProcessorFamilyAlpha21164a = 0x35 ,
  ProcessorFamilyAlpha21264 = 0x36 , ProcessorFamilyAlpha21364 = 0x37 , ProcessorFamilyAmdTurionIIUltraDualCoreMobileM = 0x38 , ProcessorFamilyAmdTurionIIDualCoreMobileM = 0x39 ,
  ProcessorFamilyAmdAthlonIIDualCoreM = 0x3A , ProcessorFamilyAmdOpteron6100Series = 0x3B , ProcessorFamilyAmdOpteron4100Series = 0x3C , ProcessorFamilyAmdOpteron6200Series = 0x3D ,
  ProcessorFamilyAmdOpteron4200Series = 0x3E , ProcessorFamilyAmdFxSeries = 0x3F , ProcessorFamilyMips = 0x40 , ProcessorFamilyMIPSR4000 = 0x41 ,
  ProcessorFamilyMIPSR4200 = 0x42 , ProcessorFamilyMIPSR4400 = 0x43 , ProcessorFamilyMIPSR4600 = 0x44 , ProcessorFamilyMIPSR10000 = 0x45 ,
  ProcessorFamilyAmdCSeries = 0x46 , ProcessorFamilyAmdESeries = 0x47 , ProcessorFamilyAmdASeries = 0x48 , ProcessorFamilyAmdGSeries = 0x49 ,
  ProcessorFamilyAmdZSeries = 0x4A , ProcessorFamilyAmdRSeries = 0x4B , ProcessorFamilyAmdOpteron4300 = 0x4C , ProcessorFamilyAmdOpteron6300 = 0x4D ,
  ProcessorFamilyAmdOpteron3300 = 0x4E , ProcessorFamilyAmdFireProSeries = 0x4F , ProcessorFamilySparc = 0x50 , ProcessorFamilySuperSparc = 0x51 ,
  ProcessorFamilymicroSparcII = 0x52 , ProcessorFamilymicroSparcIIep = 0x53 , ProcessorFamilyUltraSparc = 0x54 , ProcessorFamilyUltraSparcII = 0x55 ,
  ProcessorFamilyUltraSparcIii = 0x56 , ProcessorFamilyUltraSparcIII = 0x57 , ProcessorFamilyUltraSparcIIIi = 0x58 , ProcessorFamily68040 = 0x60 ,
  ProcessorFamily68xxx = 0x61 , ProcessorFamily68000 = 0x62 , ProcessorFamily68010 = 0x63 , ProcessorFamily68020 = 0x64 ,
  ProcessorFamily68030 = 0x65 , ProcessorFamilyAmdAthlonX4QuadCore = 0x66 , ProcessorFamilyAmdOpteronX1000Series = 0x67 , ProcessorFamilyAmdOpteronX2000Series = 0x68 ,
  ProcessorFamilyAmdOpteronASeries = 0x69 , ProcessorFamilyAmdOpteronX3000Series = 0x6A , ProcessorFamilyAmdZen = 0x6B , ProcessorFamilyHobbit = 0x70 ,
  ProcessorFamilyCrusoeTM5000 = 0x78 , ProcessorFamilyCrusoeTM3000 = 0x79 , ProcessorFamilyEfficeonTM8000 = 0x7A , ProcessorFamilyWeitek = 0x80 ,
  ProcessorFamilyItanium = 0x82 , ProcessorFamilyAmdAthlon64 = 0x83 , ProcessorFamilyAmdOpteron = 0x84 , ProcessorFamilyAmdSempron = 0x85 ,
  ProcessorFamilyAmdTurion64Mobile = 0x86 , ProcessorFamilyDualCoreAmdOpteron = 0x87 , ProcessorFamilyAmdAthlon64X2DualCore = 0x88 , ProcessorFamilyAmdTurion64X2Mobile = 0x89 ,
  ProcessorFamilyQuadCoreAmdOpteron = 0x8A , ProcessorFamilyThirdGenerationAmdOpteron = 0x8B , ProcessorFamilyAmdPhenomFxQuadCore = 0x8C , ProcessorFamilyAmdPhenomX4QuadCore = 0x8D ,
  ProcessorFamilyAmdPhenomX2DualCore = 0x8E , ProcessorFamilyAmdAthlonX2DualCore = 0x8F , ProcessorFamilyPARISC = 0x90 , ProcessorFamilyPaRisc8500 = 0x91 ,
  ProcessorFamilyPaRisc8000 = 0x92 , ProcessorFamilyPaRisc7300LC = 0x93 , ProcessorFamilyPaRisc7200 = 0x94 , ProcessorFamilyPaRisc7100LC = 0x95 ,
  ProcessorFamilyPaRisc7100 = 0x96 , ProcessorFamilyV30 = 0xA0 , ProcessorFamilyQuadCoreIntelXeon3200Series = 0xA1 , ProcessorFamilyDualCoreIntelXeon3000Series = 0xA2 ,
  ProcessorFamilyQuadCoreIntelXeon5300Series = 0xA3 , ProcessorFamilyDualCoreIntelXeon5100Series = 0xA4 , ProcessorFamilyDualCoreIntelXeon5000Series = 0xA5 , ProcessorFamilyDualCoreIntelXeonLV = 0xA6 ,
  ProcessorFamilyDualCoreIntelXeonULV = 0xA7 , ProcessorFamilyDualCoreIntelXeon7100Series = 0xA8 , ProcessorFamilyQuadCoreIntelXeon5400Series = 0xA9 , ProcessorFamilyQuadCoreIntelXeon = 0xAA ,
  ProcessorFamilyDualCoreIntelXeon5200Series = 0xAB , ProcessorFamilyDualCoreIntelXeon7200Series = 0xAC , ProcessorFamilyQuadCoreIntelXeon7300Series = 0xAD , ProcessorFamilyQuadCoreIntelXeon7400Series = 0xAE ,
  ProcessorFamilyMultiCoreIntelXeon7400Series = 0xAF , ProcessorFamilyPentiumIIIXeon = 0xB0 , ProcessorFamilyPentiumIIISpeedStep = 0xB1 , ProcessorFamilyPentium4 = 0xB2 ,
  ProcessorFamilyIntelXeon = 0xB3 , ProcessorFamilyAS400 = 0xB4 , ProcessorFamilyIntelXeonMP = 0xB5 , ProcessorFamilyAMDAthlonXP = 0xB6 ,
  ProcessorFamilyAMDAthlonMP = 0xB7 , ProcessorFamilyIntelItanium2 = 0xB8 , ProcessorFamilyIntelPentiumM = 0xB9 , ProcessorFamilyIntelCeleronD = 0xBA ,
  ProcessorFamilyIntelPentiumD = 0xBB , ProcessorFamilyIntelPentiumEx = 0xBC , ProcessorFamilyIntelCoreSolo = 0xBD , ProcessorFamilyReserved = 0xBE ,
  ProcessorFamilyIntelCore2 = 0xBF , ProcessorFamilyIntelCore2Solo = 0xC0 , ProcessorFamilyIntelCore2Extreme = 0xC1 , ProcessorFamilyIntelCore2Quad = 0xC2 ,
  ProcessorFamilyIntelCore2ExtremeMobile = 0xC3 , ProcessorFamilyIntelCore2DuoMobile = 0xC4 , ProcessorFamilyIntelCore2SoloMobile = 0xC5 , ProcessorFamilyIntelCoreI7 = 0xC6 ,
  ProcessorFamilyDualCoreIntelCeleron = 0xC7 , ProcessorFamilyIBM390 = 0xC8 , ProcessorFamilyG4 = 0xC9 , ProcessorFamilyG5 = 0xCA ,
  ProcessorFamilyG6 = 0xCB , ProcessorFamilyzArchitecture = 0xCC , ProcessorFamilyIntelCoreI5 = 0xCD , ProcessorFamilyIntelCoreI3 = 0xCE ,
  ProcessorFamilyIntelCoreI9 = 0xCF , ProcessorFamilyIntelXeonD = 0xD0 , ProcessorFamilyViaC7M = 0xD2 , ProcessorFamilyViaC7D = 0xD3 ,
  ProcessorFamilyViaC7 = 0xD4 , ProcessorFamilyViaEden = 0xD5 , ProcessorFamilyMultiCoreIntelXeon = 0xD6 , ProcessorFamilyDualCoreIntelXeon3Series = 0xD7 ,
  ProcessorFamilyQuadCoreIntelXeon3Series = 0xD8 , ProcessorFamilyViaNano = 0xD9 , ProcessorFamilyDualCoreIntelXeon5Series = 0xDA , ProcessorFamilyQuadCoreIntelXeon5Series = 0xDB ,
  ProcessorFamilyDualCoreIntelXeon7Series = 0xDD , ProcessorFamilyQuadCoreIntelXeon7Series = 0xDE , ProcessorFamilyMultiCoreIntelXeon7Series = 0xDF , ProcessorFamilyMultiCoreIntelXeon3400Series = 0xE0 ,
  ProcessorFamilyAmdOpteron3000Series = 0xE4 , ProcessorFamilyAmdSempronII = 0xE5 , ProcessorFamilyEmbeddedAmdOpteronQuadCore = 0xE6 , ProcessorFamilyAmdPhenomTripleCore = 0xE7 ,
  ProcessorFamilyAmdTurionUltraDualCoreMobile = 0xE8 , ProcessorFamilyAmdTurionDualCoreMobile = 0xE9 , ProcessorFamilyAmdAthlonDualCore = 0xEA , ProcessorFamilyAmdSempronSI = 0xEB ,
  ProcessorFamilyAmdPhenomII = 0xEC , ProcessorFamilyAmdAthlonII = 0xED , ProcessorFamilySixCoreAmdOpteron = 0xEE , ProcessorFamilyAmdSempronM = 0xEF ,
  ProcessorFamilyi860 = 0xFA , ProcessorFamilyi960 = 0xFB , ProcessorFamilyIndicatorFamily2 = 0xFE , ProcessorFamilyReserved1 = 0xFF
}
 
enum  PROCESSOR_FAMILY2_DATA {
  ProcessorFamilyARMv7 = 0x0100 , ProcessorFamilyARMv8 = 0x0101 , ProcessorFamilyARMv9 = 0x0102 , ProcessorFamilySH3 = 0x0104 ,
  ProcessorFamilySH4 = 0x0105 , ProcessorFamilyARM = 0x0118 , ProcessorFamilyStrongARM = 0x0119 , ProcessorFamily6x86 = 0x012C ,
  ProcessorFamilyMediaGX = 0x012D , ProcessorFamilyMII = 0x012E , ProcessorFamilyWinChip = 0x0140 , ProcessorFamilyDSP = 0x015E ,
  ProcessorFamilyVideoProcessor = 0x01F4 , ProcessorFamilyRiscvRV32 = 0x0200 , ProcessorFamilyRiscVRV64 = 0x0201 , ProcessorFamilyRiscVRV128 = 0x0202 ,
  ProcessorFamilyLoongArch = 0x0258 , ProcessorFamilyLoongson1 = 0x0259 , ProcessorFamilyLoongson2 = 0x025A , ProcessorFamilyLoongson3 = 0x025B ,
  ProcessorFamilyLoongson2K = 0x025C , ProcessorFamilyLoongson3A = 0x025D , ProcessorFamilyLoongson3B = 0x025E , ProcessorFamilyLoongson3C = 0x025F ,
  ProcessorFamilyLoongson3D = 0x0260 , ProcessorFamilyLoongson3E = 0x0261 , ProcessorFamilyDualCoreLoongson2K = 0x0262 , ProcessorFamilyQuadCoreLoongson3A = 0x026C ,
  ProcessorFamilyMultiCoreLoongson3A = 0x026D , ProcessorFamilyQuadCoreLoongson3B = 0x026E , ProcessorFamilyMultiCoreLoongson3B = 0x026F , ProcessorFamilyMultiCoreLoongson3C = 0x0270 ,
  ProcessorFamilyMultiCoreLoongson3D = 0x0271 , ProcessorFamilyIntelCore3 = 0x0300 , ProcessorFamilyIntelCore5 = 0x0301 , ProcessorFamilyIntelCore7 = 0x0302 ,
  ProcessorFamilyIntelCore9 = 0x0303 , ProcessorFamilyIntelCoreUltra3 = 0x0304 , ProcessorFamilyIntelCoreUltra5 = 0x0305 , ProcessorFamilyIntelCoreUltra7 = 0x0306 ,
  ProcessorFamilyIntelCoreUltra9 = 0x0307
}
 
enum  PROCESSOR_UPGRADE {
  ProcessorUpgradeOther = 0x01 , ProcessorUpgradeUnknown = 0x02 , ProcessorUpgradeDaughterBoard = 0x03 , ProcessorUpgradeZIFSocket = 0x04 ,
  ProcessorUpgradePiggyBack = 0x05 , ProcessorUpgradeNone = 0x06 , ProcessorUpgradeLIFSocket = 0x07 , ProcessorUpgradeSlot1 = 0x08 ,
  ProcessorUpgradeSlot2 = 0x09 , ProcessorUpgrade370PinSocket = 0x0A , ProcessorUpgradeSlotA = 0x0B , ProcessorUpgradeSlotM = 0x0C ,
  ProcessorUpgradeSocket423 = 0x0D , ProcessorUpgradeSocketA = 0x0E , ProcessorUpgradeSocket478 = 0x0F , ProcessorUpgradeSocket754 = 0x10 ,
  ProcessorUpgradeSocket940 = 0x11 , ProcessorUpgradeSocket939 = 0x12 , ProcessorUpgradeSocketmPGA604 = 0x13 , ProcessorUpgradeSocketLGA771 = 0x14 ,
  ProcessorUpgradeSocketLGA775 = 0x15 , ProcessorUpgradeSocketS1 = 0x16 , ProcessorUpgradeAM2 = 0x17 , ProcessorUpgradeF1207 = 0x18 ,
  ProcessorSocketLGA1366 = 0x19 , ProcessorUpgradeSocketG34 = 0x1A , ProcessorUpgradeSocketAM3 = 0x1B , ProcessorUpgradeSocketC32 = 0x1C ,
  ProcessorUpgradeSocketLGA1156 = 0x1D , ProcessorUpgradeSocketLGA1567 = 0x1E , ProcessorUpgradeSocketPGA988A = 0x1F , ProcessorUpgradeSocketBGA1288 = 0x20 ,
  ProcessorUpgradeSocketrPGA988B = 0x21 , ProcessorUpgradeSocketBGA1023 = 0x22 , ProcessorUpgradeSocketBGA1224 = 0x23 , ProcessorUpgradeSocketLGA1155 = 0x24 ,
  ProcessorUpgradeSocketLGA1356 = 0x25 , ProcessorUpgradeSocketLGA2011 = 0x26 , ProcessorUpgradeSocketFS1 = 0x27 , ProcessorUpgradeSocketFS2 = 0x28 ,
  ProcessorUpgradeSocketFM1 = 0x29 , ProcessorUpgradeSocketFM2 = 0x2A , ProcessorUpgradeSocketLGA2011_3 = 0x2B , ProcessorUpgradeSocketLGA1356_3 = 0x2C ,
  ProcessorUpgradeSocketLGA1150 = 0x2D , ProcessorUpgradeSocketBGA1168 = 0x2E , ProcessorUpgradeSocketBGA1234 = 0x2F , ProcessorUpgradeSocketBGA1364 = 0x30 ,
  ProcessorUpgradeSocketAM4 = 0x31 , ProcessorUpgradeSocketLGA1151 = 0x32 , ProcessorUpgradeSocketBGA1356 = 0x33 , ProcessorUpgradeSocketBGA1440 = 0x34 ,
  ProcessorUpgradeSocketBGA1515 = 0x35 , ProcessorUpgradeSocketLGA3647_1 = 0x36 , ProcessorUpgradeSocketSP3 = 0x37 , ProcessorUpgradeSocketSP3r2 = 0x38 ,
  ProcessorUpgradeSocketLGA2066 = 0x39 , ProcessorUpgradeSocketBGA1392 = 0x3A , ProcessorUpgradeSocketBGA1510 = 0x3B , ProcessorUpgradeSocketBGA1528 = 0x3C ,
  ProcessorUpgradeSocketLGA4189 = 0x3D , ProcessorUpgradeSocketLGA1200 = 0x3E , ProcessorUpgradeSocketLGA4677 = 0x3F , ProcessorUpgradeSocketLGA1700 = 0x40 ,
  ProcessorUpgradeSocketBGA1744 = 0x41 , ProcessorUpgradeSocketBGA1781 = 0x42 , ProcessorUpgradeSocketBGA1211 = 0x43 , ProcessorUpgradeSocketBGA2422 = 0x44 ,
  ProcessorUpgradeSocketLGA1211 = 0x45 , ProcessorUpgradeSocketLGA2422 = 0x46 , ProcessorUpgradeSocketLGA5773 = 0x47 , ProcessorUpgradeSocketBGA5773 = 0x48 ,
  ProcessorUpgradeSocketAM5 = 0x49 , ProcessorUpgradeSocketSP5 = 0x4A , ProcessorUpgradeSocketSP6 = 0x4B , ProcessorUpgradeSocketBGA883 = 0x4C ,
  ProcessorUpgradeSocketBGA1190 = 0x4D , ProcessorUpgradeSocketBGA4129 = 0x4E , ProcessorUpgradeSocketLGA4710 = 0x4F , ProcessorUpgradeSocketLGA7529 = 0x50 ,
  ProcessorUpgradeSocketBGA1964 = 0x51 , ProcessorUpgradeSocketBGA1792 = 0x52 , ProcessorUpgradeSocketBGA2049 = 0x53 , ProcessorUpgradeSocketBGA2551 = 0x54 ,
  ProcessorUpgradeSocketLGA1851 = 0x55 , ProcessorUpgradeSocketBGA2114 = 0x56 , ProcessorUpgradeSocketBGA2833 = 0x57 , ProcessorUpgradeInvalid = 0xFF
}
 
enum  MEMORY_ERROR_DETECT_METHOD {
  ErrorDetectingMethodOther = 0x01 , ErrorDetectingMethodUnknown = 0x02 , ErrorDetectingMethodNone = 0x03 , ErrorDetectingMethodParity = 0x04 ,
  ErrorDetectingMethod32Ecc = 0x05 , ErrorDetectingMethod64Ecc = 0x06 , ErrorDetectingMethod128Ecc = 0x07 , ErrorDetectingMethodCrc = 0x08
}
 
enum  MEMORY_SUPPORT_INTERLEAVE_TYPE {
  MemoryInterleaveOther = 0x01 , MemoryInterleaveUnknown = 0x02 , MemoryInterleaveOneWay = 0x03 , MemoryInterleaveTwoWay = 0x04 ,
  MemoryInterleaveFourWay = 0x05 , MemoryInterleaveEightWay = 0x06 , MemoryInterleaveSixteenWay = 0x07
}
 
enum  CACHE_ERROR_TYPE_DATA {
  CacheErrorOther = 0x01 , CacheErrorUnknown = 0x02 , CacheErrorNone = 0x03 , CacheErrorParity = 0x04 ,
  CacheErrorSingleBit = 0x05 , CacheErrorMultiBit = 0x06
}
 
enum  CACHE_TYPE_DATA {
  CacheTypeOther = 0x01 , CacheTypeUnknown = 0x02 , CacheTypeInstruction = 0x03 , CacheTypeData = 0x04 ,
  CacheTypeUnified = 0x05
}
 
enum  CACHE_ASSOCIATIVITY_DATA {
  CacheAssociativityOther = 0x01 , CacheAssociativityUnknown = 0x02 , CacheAssociativityDirectMapped = 0x03 , CacheAssociativity2Way = 0x04 ,
  CacheAssociativity4Way = 0x05 , CacheAssociativityFully = 0x06 , CacheAssociativity8Way = 0x07 , CacheAssociativity16Way = 0x08 ,
  CacheAssociativity12Way = 0x09 , CacheAssociativity24Way = 0x0A , CacheAssociativity32Way = 0x0B , CacheAssociativity48Way = 0x0C ,
  CacheAssociativity64Way = 0x0D , CacheAssociativity20Way = 0x0E
}
 
enum  MISC_PORT_CONNECTOR_TYPE {
  PortConnectorTypeNone = 0x00 , PortConnectorTypeCentronics = 0x01 , PortConnectorTypeMiniCentronics = 0x02 , PortConnectorTypeProprietary = 0x03 ,
  PortConnectorTypeDB25Male = 0x04 , PortConnectorTypeDB25Female = 0x05 , PortConnectorTypeDB15Male = 0x06 , PortConnectorTypeDB15Female = 0x07 ,
  PortConnectorTypeDB9Male = 0x08 , PortConnectorTypeDB9Female = 0x09 , PortConnectorTypeRJ11 = 0x0A , PortConnectorTypeRJ45 = 0x0B ,
  PortConnectorType50PinMiniScsi = 0x0C , PortConnectorTypeMiniDin = 0x0D , PortConnectorTypeMicroDin = 0x0E , PortConnectorTypePS2 = 0x0F ,
  PortConnectorTypeInfrared = 0x10 , PortConnectorTypeHpHil = 0x11 , PortConnectorTypeUsb = 0x12 , PortConnectorTypeSsaScsi = 0x13 ,
  PortConnectorTypeCircularDin8Male = 0x14 , PortConnectorTypeCircularDin8Female = 0x15 , PortConnectorTypeOnboardIde = 0x16 , PortConnectorTypeOnboardFloppy = 0x17 ,
  PortConnectorType9PinDualInline = 0x18 , PortConnectorType25PinDualInline = 0x19 , PortConnectorType50PinDualInline = 0x1A , PortConnectorType68PinDualInline = 0x1B ,
  PortConnectorTypeOnboardSoundInput = 0x1C , PortConnectorTypeMiniCentronicsType14 = 0x1D , PortConnectorTypeMiniCentronicsType26 = 0x1E , PortConnectorTypeHeadPhoneMiniJack = 0x1F ,
  PortConnectorTypeBNC = 0x20 , PortConnectorType1394 = 0x21 , PortConnectorTypeSasSata = 0x22 , PortConnectorTypeUsbTypeC = 0x23 ,
  PortConnectorTypePC98 = 0xA0 , PortConnectorTypePC98Hireso = 0xA1 , PortConnectorTypePCH98 = 0xA2 , PortConnectorTypePC98Note = 0xA3 ,
  PortConnectorTypePC98Full = 0xA4 , PortConnectorTypeOther = 0xFF
}
 
enum  MISC_PORT_TYPE {
  PortTypeNone = 0x00 , PortTypeParallelXtAtCompatible = 0x01 , PortTypeParallelPortPs2 = 0x02 , PortTypeParallelPortEcp = 0x03 ,
  PortTypeParallelPortEpp = 0x04 , PortTypeParallelPortEcpEpp = 0x05 , PortTypeSerialXtAtCompatible = 0x06 , PortTypeSerial16450Compatible = 0x07 ,
  PortTypeSerial16550Compatible = 0x08 , PortTypeSerial16550ACompatible = 0x09 , PortTypeScsi = 0x0A , PortTypeMidi = 0x0B ,
  PortTypeJoyStick = 0x0C , PortTypeKeyboard = 0x0D , PortTypeMouse = 0x0E , PortTypeSsaScsi = 0x0F ,
  PortTypeUsb = 0x10 , PortTypeFireWire = 0x11 , PortTypePcmciaTypeI = 0x12 , PortTypePcmciaTypeII = 0x13 ,
  PortTypePcmciaTypeIII = 0x14 , PortTypeCardBus = 0x15 , PortTypeAccessBusPort = 0x16 , PortTypeScsiII = 0x17 ,
  PortTypeScsiWide = 0x18 , PortTypePC98 = 0x19 , PortTypePC98Hireso = 0x1A , PortTypePCH98 = 0x1B ,
  PortTypeVideoPort = 0x1C , PortTypeAudioPort = 0x1D , PortTypeModemPort = 0x1E , PortTypeNetworkPort = 0x1F ,
  PortTypeSata = 0x20 , PortTypeSas = 0x21 , PortTypeMfdp = 0x22 , PortTypeThunderbolt = 0x23 ,
  PortType8251Compatible = 0xA0 , PortType8251FifoCompatible = 0xA1 , PortTypeOther = 0xFF
}
 
enum  MISC_SLOT_TYPE {
  SlotTypeOther = 0x01 , SlotTypeUnknown = 0x02 , SlotTypeIsa = 0x03 , SlotTypeMca = 0x04 ,
  SlotTypeEisa = 0x05 , SlotTypePci = 0x06 , SlotTypePcmcia = 0x07 , SlotTypeVlVesa = 0x08 ,
  SlotTypeProprietary = 0x09 , SlotTypeProcessorCardSlot = 0x0A , SlotTypeProprietaryMemoryCardSlot = 0x0B , SlotTypeIORiserCardSlot = 0x0C ,
  SlotTypeNuBus = 0x0D , SlotTypePci66MhzCapable = 0x0E , SlotTypeAgp = 0x0F , SlotTypeApg2X = 0x10 ,
  SlotTypeAgp4X = 0x11 , SlotTypePciX = 0x12 , SlotTypeAgp8X = 0x13 , SlotTypeM2Socket1_DP = 0x14 ,
  SlotTypeM2Socket1_SD = 0x15 , SlotTypeM2Socket2 = 0x16 , SlotTypeM2Socket3 = 0x17 , SlotTypeMxmTypeI = 0x18 ,
  SlotTypeMxmTypeII = 0x19 , SlotTypeMxmTypeIIIStandard = 0x1A , SlotTypeMxmTypeIIIHe = 0x1B , SlotTypeMxmTypeIV = 0x1C ,
  SlotTypeMxm30TypeA = 0x1D , SlotTypeMxm30TypeB = 0x1E , SlotTypePciExpressGen2Sff_8639 = 0x1F , SlotTypePciExpressGen3Sff_8639 = 0x20 ,
  SlotTypePciExpressMini52pinWithBSKO = 0x21 , SlotTypePciExpressMini52pinWithoutBSKO = 0x22 , SlotTypePciExpressMini76pin = 0x23 , SlotTypePCIExpressGen4SFF_8639 = 0x24 ,
  SlotTypePCIExpressGen5SFF_8639 = 0x25 , SlotTypeOCPNIC30SmallFormFactor = 0x26 , SlotTypeOCPNIC30LargeFormFactor = 0x27 , SlotTypeOCPNICPriorto30 = 0x28 ,
  SlotTypeCXLFlexbus10 = 0x30 , SlotTypePC98C20 = 0xA0 , SlotTypePC98C24 = 0xA1 , SlotTypePC98E = 0xA2 ,
  SlotTypePC98LocalBus = 0xA3 , SlotTypePC98Card = 0xA4 , SlotTypePciExpress = 0xA5 , SlotTypePciExpressX1 = 0xA6 ,
  SlotTypePciExpressX2 = 0xA7 , SlotTypePciExpressX4 = 0xA8 , SlotTypePciExpressX8 = 0xA9 , SlotTypePciExpressX16 = 0xAA ,
  SlotTypePciExpressGen2 = 0xAB , SlotTypePciExpressGen2X1 = 0xAC , SlotTypePciExpressGen2X2 = 0xAD , SlotTypePciExpressGen2X4 = 0xAE ,
  SlotTypePciExpressGen2X8 = 0xAF , SlotTypePciExpressGen2X16 = 0xB0 , SlotTypePciExpressGen3 = 0xB1 , SlotTypePciExpressGen3X1 = 0xB2 ,
  SlotTypePciExpressGen3X2 = 0xB3 , SlotTypePciExpressGen3X4 = 0xB4 , SlotTypePciExpressGen3X8 = 0xB5 , SlotTypePciExpressGen3X16 = 0xB6 ,
  SlotTypePciExpressGen4 = 0xB8 , SlotTypePciExpressGen4X1 = 0xB9 , SlotTypePciExpressGen4X2 = 0xBA , SlotTypePciExpressGen4X4 = 0xBB ,
  SlotTypePciExpressGen4X8 = 0xBC , SlotTypePciExpressGen4X16 = 0xBD , SlotTypePCIExpressGen5 = 0xBE , SlotTypePCIExpressGen5X1 = 0xBF ,
  SlotTypePCIExpressGen5X2 = 0xC0 , SlotTypePCIExpressGen5X4 = 0xC1 , SlotTypePCIExpressGen5X8 = 0xC2 , SlotTypePCIExpressGen5X16 = 0xC3 ,
  SlotTypePCIExpressGen6andBeyond = 0xC4 , SlotTypeEnterpriseandDatacenter1UE1FormFactorSlot = 0xC5 , SlotTypeEnterpriseandDatacenter3E3FormFactorSlot = 0xC6
}
 
enum  MISC_SLOT_DATA_BUS_WIDTH {
  SlotDataBusWidthOther = 0x01 , SlotDataBusWidthUnknown = 0x02 , SlotDataBusWidth8Bit = 0x03 , SlotDataBusWidth16Bit = 0x04 ,
  SlotDataBusWidth32Bit = 0x05 , SlotDataBusWidth64Bit = 0x06 , SlotDataBusWidth128Bit = 0x07 , SlotDataBusWidth1X = 0x08 ,
  SlotDataBusWidth2X = 0x09 , SlotDataBusWidth4X = 0x0A , SlotDataBusWidth8X = 0x0B , SlotDataBusWidth12X = 0x0C ,
  SlotDataBusWidth16X = 0x0D , SlotDataBusWidth32X = 0x0E
}
 
enum  MISC_SLOT_PHYSICAL_WIDTH {
  SlotPhysicalWidthOther = 0x01 , SlotPhysicalWidthUnknown = 0x02 , SlotPhysicalWidth8Bit = 0x03 , SlotPhysicalWidth16Bit = 0x04 ,
  SlotPhysicalWidth32Bit = 0x05 , SlotPhysicalWidth64Bit = 0x06 , SlotPhysicalWidth128Bit = 0x07 , SlotPhysicalWidth1X = 0x08 ,
  SlotPhysicalWidth2X = 0x09 , SlotPhysicalWidth4X = 0x0A , SlotPhysicalWidth8X = 0x0B , SlotPhysicalWidth12X = 0x0C ,
  SlotPhysicalWidth16X = 0x0D , SlotPhysicalWidth32X = 0x0E
}
 
enum  MISC_SLOT_INFORMATION {
  Others = 0x00 , Gen1 = 0x01 , Gen2 = 0x01 , Gen3 = 0x03 ,
  Gen4 = 0x04 , Gen5 = 0x05 , Gen6 = 0x06
}
 
enum  MISC_SLOT_USAGE {
  SlotUsageOther = 0x01 , SlotUsageUnknown = 0x02 , SlotUsageAvailable = 0x03 , SlotUsageInUse = 0x04 ,
  SlotUsageUnavailable = 0x05
}
 
enum  MISC_SLOT_LENGTH { SlotLengthOther = 0x01 , SlotLengthUnknown = 0x02 , SlotLengthShort = 0x03 , SlotLengthLong = 0x04 }
 
enum  MISC_SLOT_HEIGHT {
  SlotHeightNone = 0x00 , SlotHeightOther = 0x01 , SlotHeightUnknown = 0x02 , SlotHeightFullHeight = 0x03 ,
  SlotHeightLowProfile = 0x04
}
 
enum  MISC_ONBOARD_DEVICE_TYPE {
  OnBoardDeviceTypeOther = 0x01 , OnBoardDeviceTypeUnknown = 0x02 , OnBoardDeviceTypeVideo = 0x03 , OnBoardDeviceTypeScsiController = 0x04 ,
  OnBoardDeviceTypeEthernet = 0x05 , OnBoardDeviceTypeTokenRing = 0x06 , OnBoardDeviceTypeSound = 0x07 , OnBoardDeviceTypePATAController = 0x08 ,
  OnBoardDeviceTypeSATAController = 0x09 , OnBoardDeviceTypeSASController = 0x0A
}
 
enum  EVENT_LOG_TYPE_DATA {
  EventLogTypeReserved = 0x00 , EventLogTypeSingleBitECC = 0x01 , EventLogTypeMultiBitECC = 0x02 , EventLogTypeParityMemErr = 0x03 ,
  EventLogTypeBusTimeOut = 0x04 , EventLogTypeIOChannelCheck = 0x05 , EventLogTypeSoftwareNMI = 0x06 , EventLogTypePOSTMemResize = 0x07 ,
  EventLogTypePOSTErr = 0x08 , EventLogTypePCIParityErr = 0x09 , EventLogTypePCISystemErr = 0x0A , EventLogTypeCPUFailure = 0x0B ,
  EventLogTypeEISATimeOut = 0x0C , EventLogTypeMemLogDisabled = 0x0D , EventLogTypeLoggingDisabled = 0x0E , EventLogTypeSysLimitExce = 0x10 ,
  EventLogTypeAsyncHWTimer = 0x11 , EventLogTypeSysConfigInfo = 0x12 , EventLogTypeHDInfo = 0x13 , EventLogTypeSysReconfig = 0x14 ,
  EventLogTypeUncorrectCPUErr = 0x15 , EventLogTypeAreaResetAndClr = 0x16 , EventLogTypeSystemBoot = 0x17 , EventLogTypeUnused = 0x18 ,
  EventLogTypeAvailForSys = 0x80 , EventLogTypeEndOfLog = 0xFF
}
 
enum  EVENT_LOG_VARIABLE_DATA {
  EventLogVariableNone = 0x00 , EventLogVariableHandle = 0x01 , EventLogVariableMutilEvent = 0x02 , EventLogVariableMutilEventHandle = 0x03 ,
  EventLogVariablePOSTResultBitmap = 0x04 , EventLogVariableSysManagementType = 0x05 , EventLogVariableMutliEventSysManagmentType = 0x06 , EventLogVariableUnused = 0x07 ,
  EventLogVariableOEMAssigned = 0x80
}
 
enum  MEMORY_ARRAY_LOCATION {
  MemoryArrayLocationOther = 0x01 , MemoryArrayLocationUnknown = 0x02 , MemoryArrayLocationSystemBoard = 0x03 , MemoryArrayLocationIsaAddonCard = 0x04 ,
  MemoryArrayLocationEisaAddonCard = 0x05 , MemoryArrayLocationPciAddonCard = 0x06 , MemoryArrayLocationMcaAddonCard = 0x07 , MemoryArrayLocationPcmciaAddonCard = 0x08 ,
  MemoryArrayLocationProprietaryAddonCard = 0x09 , MemoryArrayLocationNuBus = 0x0A , MemoryArrayLocationPc98C20AddonCard = 0xA0 , MemoryArrayLocationPc98C24AddonCard = 0xA1 ,
  MemoryArrayLocationPc98EAddonCard = 0xA2 , MemoryArrayLocationPc98LocalBusAddonCard = 0xA3 , MemoryArrayLocationCXLAddonCard = 0xA4
}
 
enum  MEMORY_ARRAY_USE {
  MemoryArrayUseOther = 0x01 , MemoryArrayUseUnknown = 0x02 , MemoryArrayUseSystemMemory = 0x03 , MemoryArrayUseVideoMemory = 0x04 ,
  MemoryArrayUseFlashMemory = 0x05 , MemoryArrayUseNonVolatileRam = 0x06 , MemoryArrayUseCacheMemory = 0x07
}
 
enum  MEMORY_ERROR_CORRECTION {
  MemoryErrorCorrectionOther = 0x01 , MemoryErrorCorrectionUnknown = 0x02 , MemoryErrorCorrectionNone = 0x03 , MemoryErrorCorrectionParity = 0x04 ,
  MemoryErrorCorrectionSingleBitEcc = 0x05 , MemoryErrorCorrectionMultiBitEcc = 0x06 , MemoryErrorCorrectionCrc = 0x07
}
 
enum  MEMORY_FORM_FACTOR {
  MemoryFormFactorOther = 0x01 , MemoryFormFactorUnknown = 0x02 , MemoryFormFactorSimm = 0x03 , MemoryFormFactorSip = 0x04 ,
  MemoryFormFactorChip = 0x05 , MemoryFormFactorDip = 0x06 , MemoryFormFactorZip = 0x07 , MemoryFormFactorProprietaryCard = 0x08 ,
  MemoryFormFactorDimm = 0x09 , MemoryFormFactorTsop = 0x0A , MemoryFormFactorRowOfChips = 0x0B , MemoryFormFactorRimm = 0x0C ,
  MemoryFormFactorSodimm = 0x0D , MemoryFormFactorSrimm = 0x0E , MemoryFormFactorFbDimm = 0x0F , MemoryFormFactorDie = 0x10
}
 
enum  MEMORY_DEVICE_TYPE {
  MemoryTypeOther = 0x01 , MemoryTypeUnknown = 0x02 , MemoryTypeDram = 0x03 , MemoryTypeEdram = 0x04 ,
  MemoryTypeVram = 0x05 , MemoryTypeSram = 0x06 , MemoryTypeRam = 0x07 , MemoryTypeRom = 0x08 ,
  MemoryTypeFlash = 0x09 , MemoryTypeEeprom = 0x0A , MemoryTypeFeprom = 0x0B , MemoryTypeEprom = 0x0C ,
  MemoryTypeCdram = 0x0D , MemoryType3Dram = 0x0E , MemoryTypeSdram = 0x0F , MemoryTypeSgram = 0x10 ,
  MemoryTypeRdram = 0x11 , MemoryTypeDdr = 0x12 , MemoryTypeDdr2 = 0x13 , MemoryTypeDdr2FbDimm = 0x14 ,
  MemoryTypeDdr3 = 0x18 , MemoryTypeFbd2 = 0x19 , MemoryTypeDdr4 = 0x1A , MemoryTypeLpddr = 0x1B ,
  MemoryTypeLpddr2 = 0x1C , MemoryTypeLpddr3 = 0x1D , MemoryTypeLpddr4 = 0x1E , MemoryTypeLogicalNonVolatileDevice = 0x1F ,
  MemoryTypeHBM = 0x20 , MemoryTypeHBM2 = 0x21 , MemoryTypeDdr5 = 0x22 , MemoryTypeLpddr5 = 0x23 ,
  MemoryTypeHBM3 = 0x24
}
 
enum  MEMORY_DEVICE_TECHNOLOGY {
  MemoryTechnologyOther = 0x01 , MemoryTechnologyUnknown = 0x02 , MemoryTechnologyDram = 0x03 , MemoryTechnologyNvdimmN = 0x04 ,
  MemoryTechnologyNvdimmF = 0x05 , MemoryTechnologyNvdimmP = 0x06 , MemoryTechnologyIntelOptanePersistentMemory = 0x07
}
 
enum  MEMORY_ERROR_TYPE {
  MemoryErrorOther = 0x01 , MemoryErrorUnknown = 0x02 , MemoryErrorOk = 0x03 , MemoryErrorBadRead = 0x04 ,
  MemoryErrorParity = 0x05 , MemoryErrorSigleBit = 0x06 , MemoryErrorDoubleBit = 0x07 , MemoryErrorMultiBit = 0x08 ,
  MemoryErrorNibble = 0x09 , MemoryErrorChecksum = 0x0A , MemoryErrorCrc = 0x0B , MemoryErrorCorrectSingleBit = 0x0C ,
  MemoryErrorCorrected = 0x0D , MemoryErrorUnCorrectable = 0x0E
}
 
enum  MEMORY_ERROR_GRANULARITY { MemoryGranularityOther = 0x01 , MemoryGranularityOtherUnknown = 0x02 , MemoryGranularityDeviceLevel = 0x03 , MemoryGranularityMemPartitionLevel = 0x04 }
 
enum  MEMORY_ERROR_OPERATION {
  MemoryErrorOperationOther = 0x01 , MemoryErrorOperationUnknown = 0x02 , MemoryErrorOperationRead = 0x03 , MemoryErrorOperationWrite = 0x04 ,
  MemoryErrorOperationPartialWrite = 0x05
}
 
enum  BUILTIN_POINTING_DEVICE_TYPE {
  PointingDeviceTypeOther = 0x01 , PointingDeviceTypeUnknown = 0x02 , PointingDeviceTypeMouse = 0x03 , PointingDeviceTypeTrackBall = 0x04 ,
  PointingDeviceTypeTrackPoint = 0x05 , PointingDeviceTypeGlidePoint = 0x06 , PointingDeviceTouchPad = 0x07 , PointingDeviceTouchScreen = 0x08 ,
  PointingDeviceOpticalSensor = 0x09
}
 
enum  BUILTIN_POINTING_DEVICE_INTERFACE {
  PointingDeviceInterfaceOther = 0x01 , PointingDeviceInterfaceUnknown = 0x02 , PointingDeviceInterfaceSerial = 0x03 , PointingDeviceInterfacePs2 = 0x04 ,
  PointingDeviceInterfaceInfrared = 0x05 , PointingDeviceInterfaceHpHil = 0x06 , PointingDeviceInterfaceBusMouse = 0x07 , PointingDeviceInterfaceADB = 0x08 ,
  PointingDeviceInterfaceBusMouseDB9 = 0xA0 , PointingDeviceInterfaceBusMouseMicroDin = 0xA1 , PointingDeviceInterfaceUsb = 0xA2 , PointingDeviceInterfaceI2c = 0xA3 ,
  PointingDeviceInterfaceSpi = 0xA4
}
 
enum  PORTABLE_BATTERY_DEVICE_CHEMISTRY {
  PortableBatteryDeviceChemistryOther = 0x01 , PortableBatteryDeviceChemistryUnknown = 0x02 , PortableBatteryDeviceChemistryLeadAcid = 0x03 , PortableBatteryDeviceChemistryNickelCadmium = 0x04 ,
  PortableBatteryDeviceChemistryNickelMetalHydride = 0x05 , PortableBatteryDeviceChemistryLithiumIon = 0x06 , PortableBatteryDeviceChemistryZincAir = 0x07 , PortableBatteryDeviceChemistryLithiumPolymer = 0x08
}
 
enum  MISC_BOOT_INFORMATION_STATUS_DATA_TYPE {
  BootInformationStatusNoError = 0x00 , BootInformationStatusNoBootableMedia = 0x01 , BootInformationStatusNormalOSFailedLoading = 0x02 , BootInformationStatusFirmwareDetectedFailure = 0x03 ,
  BootInformationStatusOSDetectedFailure = 0x04 , BootInformationStatusUserRequestedBoot = 0x05 , BootInformationStatusSystemSecurityViolation = 0x06 , BootInformationStatusPreviousRequestedImage = 0x07 ,
  BootInformationStatusWatchdogTimerExpired = 0x08 , BootInformationStatusStartReserved = 0x09 , BootInformationStatusStartOemSpecific = 0x80 , BootInformationStatusStartProductSpecific = 0xC0
}
 
enum  MISC_MANAGEMENT_DEVICE_TYPE {
  ManagementDeviceTypeOther = 0x01 , ManagementDeviceTypeUnknown = 0x02 , ManagementDeviceTypeLm75 = 0x03 , ManagementDeviceTypeLm78 = 0x04 ,
  ManagementDeviceTypeLm79 = 0x05 , ManagementDeviceTypeLm80 = 0x06 , ManagementDeviceTypeLm81 = 0x07 , ManagementDeviceTypeAdm9240 = 0x08 ,
  ManagementDeviceTypeDs1780 = 0x09 , ManagementDeviceTypeMaxim1617 = 0x0A , ManagementDeviceTypeGl518Sm = 0x0B , ManagementDeviceTypeW83781D = 0x0C ,
  ManagementDeviceTypeHt82H791 = 0x0D
}
 
enum  MISC_MANAGEMENT_DEVICE_ADDRESS_TYPE {
  ManagementDeviceAddressTypeOther = 0x01 , ManagementDeviceAddressTypeUnknown = 0x02 , ManagementDeviceAddressTypeIOPort = 0x03 , ManagementDeviceAddressTypeMemory = 0x04 ,
  ManagementDeviceAddressTypeSmbus = 0x05
}
 
enum  MEMORY_CHANNEL_TYPE { MemoryChannelTypeOther = 0x01 , MemoryChannelTypeUnknown = 0x02 , MemoryChannelTypeRambus = 0x03 , MemoryChannelTypeSyncLink = 0x04 }
 
enum  BMC_INTERFACE_TYPE {
  IPMIDeviceInfoInterfaceTypeUnknown = 0x00 , IPMIDeviceInfoInterfaceTypeKCS = 0x01 , IPMIDeviceInfoInterfaceTypeSMIC = 0x02 , IPMIDeviceInfoInterfaceTypeBT = 0x03 ,
  IPMIDeviceInfoInterfaceTypeSSIF = 0x04
}
 
enum  ONBOARD_DEVICE_EXTENDED_INFO_TYPE {
  OnBoardDeviceExtendedTypeOther = 0x01 , OnBoardDeviceExtendedTypeUnknown = 0x02 , OnBoardDeviceExtendedTypeVideo = 0x03 , OnBoardDeviceExtendedTypeScsiController = 0x04 ,
  OnBoardDeviceExtendedTypeEthernet = 0x05 , OnBoardDeviceExtendedTypeTokenRing = 0x06 , OnBoardDeviceExtendedTypeSound = 0x07 , OnBoardDeviceExtendedTypePATAController = 0x08 ,
  OnBoardDeviceExtendedTypeSATAController = 0x09 , OnBoardDeviceExtendedTypeSASController = 0x0A , OnBoardDeviceExtendedTypeWirelessLAN = 0x0B , OnBoardDeviceExtendedTypeBluetooth = 0x0C ,
  OnBoardDeviceExtendedTypeWWAN = 0x0D , OnBoardDeviceExtendedTypeeMMC = 0x0E , OnBoardDeviceExtendedTypeNvme = 0x0F , OnBoardDeviceExtendedTypeUfc = 0x10
}
 
enum  MC_HOST_INTERFACE_TYPE { MCHostInterfaceTypeNetworkHostInterface = 0x40 , MCHostInterfaceTypeOemDefined = 0xF0 }
 
enum  MC_HOST_INTERFACE_PROTOCOL_TYPE { MCHostInterfaceProtocolTypeIPMI = 0x02 , MCHostInterfaceProtocolTypeMCTP = 0x03 , MCHostInterfaceProtocolTypeRedfishOverIP = 0x04 , MCHostInterfaceProtocolTypeOemDefined = 0xF0 }
 
enum  PROCESSOR_SPECIFIC_BLOCK_ARCH_TYPE {
  ProcessorSpecificBlockArchTypeReserved = 0x00 , ProcessorSpecificBlockArchTypeIa32 = 0x01 , ProcessorSpecificBlockArchTypeX64 = 0x02 , ProcessorSpecificBlockArchTypeItanium = 0x03 ,
  ProcessorSpecificBlockArchTypeAarch32 = 0x04 , ProcessorSpecificBlockArchTypeAarch64 = 0x05 , ProcessorSpecificBlockArchTypeRiscVRV32 = 0x06 , ProcessorSpecificBlockArchTypeRiscVRV64 = 0x07 ,
  ProcessorSpecificBlockArchTypeRiscVRV128 = 0x08 , ProcessorSpecificBlockArchTypeLoongArch32 = 0x09 , ProcessorSpecificBlockArchTypeLoongArch64 = 0x0A
}
 
enum  FIRMWARE_INVENTORY_VERSION_FORMAT_TYPE {
  VersionFormatTypeFreeForm = 0x00 , VersionFormatTypeMajorMinor = 0x01 , VersionFormatType32BitHex = 0x02 , VersionFormatType64BitHex = 0x03 ,
  VersionFormatTypeReserved = 0x04 , VersionFormatTypeOem = 0x80
}
 
enum  FIRMWARE_INVENTORY_FIRMWARE_ID_FORMAT_TYPE { FirmwareIdFormatTypeFreeForm = 0x00 , FirmwareIdFormatTypeUuid = 0x01 , FirmwareIdFormatTypeReserved = 0x04 , InventoryFirmwareIdFormatTypeOem = 0x80 }
 
enum  FIRMWARE_INVENTORY_STATE {
  FirmwareInventoryStateOther = 0x01 , FirmwareInventoryStateUnknown = 0x02 , FirmwareInventoryStateDisabled = 0x03 , FirmwareInventoryStateEnabled = 0x04 ,
  FirmwareInventoryStateAbsent = 0x05 , FirmwareInventoryStateStandbyOffline = 0x06 , FirmwareInventoryStateStandbySpare = 0x07 , FirmwareInventoryStateUnavailableOffline = 0x08
}
 
enum  STRING_PROPERTY_ID {
  StringPropertyIdNone = 0x0000 , StringPropertyIdDevicePath = 0x0001 , StringPropertyIdReserved = 0x0002 , StringPropertyIdBiosVendor = 0x8000 ,
  StringPropertyIdOem = 0xC000
}
 

Detailed Description

Industry Standard Definitions of SMBIOS Table Specification v3.8.0.

Copyright (c) 2006 - 2024, Intel Corporation. All rights reserved.
(C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP
(C) Copyright 2015 - 2019 Hewlett Packard Enterprise Development LP
Copyright (c) 2022, AMD Incorporated. All rights reserved.
Copyright (c) 1985 - 2022, American Megatrends International LLC.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file SmBios.h.

Macro Definition Documentation

◆ SMBIOS_3_0_ANCHOR_STRING

#define SMBIOS_3_0_ANCHOR_STRING   "_SM3_"

Reference SMBIOS 3.4, chapter 5.2.2 SMBIOS 3.0 (64-bit) Entry Point Table 2 - SMBIOS 3.0 (64-bit) Entry Point structure, offset 00h SM3, specified as five ASCII characters (5F 53 4D 33 5F).

Definition at line 65 of file SmBios.h.

◆ SMBIOS_3_0_ANCHOR_STRING_LENGTH

#define SMBIOS_3_0_ANCHOR_STRING_LENGTH   5

Definition at line 66 of file SmBios.h.

◆ SMBIOS_3_0_TABLE_MAX_LENGTH

#define SMBIOS_3_0_TABLE_MAX_LENGTH   0xFFFFFFFF

Definition at line 49 of file SmBios.h.

◆ SMBIOS_ANCHOR_STRING

#define SMBIOS_ANCHOR_STRING   "_SM_"

Reference SMBIOS 3.4, chapter 5.2.1 SMBIOS 2.1 (32-bit) Entry Point Table 1 - SMBIOS 2.1 (32-bit) Entry Point structure, offset 00h SM, specified as four ASCII characters (5F 53 4D 5F).

Definition at line 56 of file SmBios.h.

◆ SMBIOS_ANCHOR_STRING_LENGTH

#define SMBIOS_ANCHOR_STRING_LENGTH   4

Definition at line 57 of file SmBios.h.

◆ SMBIOS_HANDLE_PI_RESERVED

#define SMBIOS_HANDLE_PI_RESERVED   0xFFFE

Reference SMBIOS 2.7, chapter 6.1.2. The UEFI Platform Initialization Specification reserves handle number FFFEh for its EFI_SMBIOS_PROTOCOL.Add() function to mean "assign an unused handle number automatically." This number is not used for any other purpose by the SMBIOS specification.

Definition at line 29 of file SmBios.h.

◆ SMBIOS_HANDLE_RESERVED_BEGIN

#define SMBIOS_HANDLE_RESERVED_BEGIN   0xFF00

Reference SMBIOS 2.6, chapter 3.1.2. For v2.1 and later, handle values in the range 0FF00h to 0FFFFh are reserved for use by this specification.

Definition at line 21 of file SmBios.h.

◆ SMBIOS_OEM_BEGIN

#define SMBIOS_OEM_BEGIN   128

Definition at line 133 of file SmBios.h.

◆ SMBIOS_OEM_END

#define SMBIOS_OEM_END   255

Definition at line 134 of file SmBios.h.

◆ SMBIOS_STRING_MAX_LENGTH

#define SMBIOS_STRING_MAX_LENGTH   64

Reference SMBIOS 2.6, chapter 3.1.3. Each text string is limited to 64 significant characters due to system MIF limitations. Reference SMBIOS 2.7, chapter 6.1.3. It will have no limit on the length of each individual text string.

Definition at line 37 of file SmBios.h.

◆ SMBIOS_TABLE_MAX_LENGTH

#define SMBIOS_TABLE_MAX_LENGTH   0xFFFF

Definition at line 44 of file SmBios.h.

◆ SMBIOS_TYPE_32BIT_MEMORY_ERROR_INFORMATION

#define SMBIOS_TYPE_32BIT_MEMORY_ERROR_INFORMATION   18

Definition at line 90 of file SmBios.h.

◆ SMBIOS_TYPE_64BIT_MEMORY_ERROR_INFORMATION

#define SMBIOS_TYPE_64BIT_MEMORY_ERROR_INFORMATION   33

Definition at line 105 of file SmBios.h.

◆ SMBIOS_TYPE_ADDITIONAL_INFORMATION

#define SMBIOS_TYPE_ADDITIONAL_INFORMATION   40

Definition at line 112 of file SmBios.h.

◆ SMBIOS_TYPE_BASEBOARD_INFORMATION

#define SMBIOS_TYPE_BASEBOARD_INFORMATION   2

Definition at line 74 of file SmBios.h.

◆ SMBIOS_TYPE_BIOS_INFORMATION

#define SMBIOS_TYPE_BIOS_INFORMATION   0

Definition at line 72 of file SmBios.h.

◆ SMBIOS_TYPE_BIOS_LANGUAGE_INFORMATION

#define SMBIOS_TYPE_BIOS_LANGUAGE_INFORMATION   13

Definition at line 85 of file SmBios.h.

◆ SMBIOS_TYPE_BOOT_INTEGRITY_SERVICE

#define SMBIOS_TYPE_BOOT_INTEGRITY_SERVICE   31

Definition at line 103 of file SmBios.h.

◆ SMBIOS_TYPE_BUILT_IN_POINTING_DEVICE

#define SMBIOS_TYPE_BUILT_IN_POINTING_DEVICE   21

Definition at line 93 of file SmBios.h.

◆ SMBIOS_TYPE_CACHE_INFORMATION

#define SMBIOS_TYPE_CACHE_INFORMATION   7

Definition at line 79 of file SmBios.h.

◆ SMBIOS_TYPE_COOLING_DEVICE

#define SMBIOS_TYPE_COOLING_DEVICE   27

Definition at line 99 of file SmBios.h.

◆ SMBIOS_TYPE_ELECTRICAL_CURRENT_PROBE

#define SMBIOS_TYPE_ELECTRICAL_CURRENT_PROBE   29

Definition at line 101 of file SmBios.h.

◆ SMBIOS_TYPE_END_OF_TABLE

#define SMBIOS_TYPE_END_OF_TABLE   0x007F

End-of-table type is added from SMBIOS 2.2. Reference SMBIOS 2.6, chapter 3.3.44. The end-of-table indicator is used in the last physical structure in a table

Definition at line 131 of file SmBios.h.

◆ SMBIOS_TYPE_FIRMWARE_INVENTORY_INFORMATION

#define SMBIOS_TYPE_FIRMWARE_INVENTORY_INFORMATION   45

Definition at line 117 of file SmBios.h.

◆ SMBIOS_TYPE_GROUP_ASSOCIATIONS

#define SMBIOS_TYPE_GROUP_ASSOCIATIONS   14

Definition at line 86 of file SmBios.h.

◆ SMBIOS_TYPE_HARDWARE_SECURITY

#define SMBIOS_TYPE_HARDWARE_SECURITY   24

Definition at line 96 of file SmBios.h.

◆ SMBIOS_TYPE_INACTIVE

#define SMBIOS_TYPE_INACTIVE   0x007E

Inactive type is added from SMBIOS 2.2. Reference SMBIOS 2.6, chapter 3.3.43. Upper-level software that interprets the SMBIOS structure-table should bypass an Inactive structure just like a structure type that the software does not recognize.

Definition at line 125 of file SmBios.h.

◆ SMBIOS_TYPE_IPMI_DEVICE_INFORMATION

#define SMBIOS_TYPE_IPMI_DEVICE_INFORMATION   38

Definition at line 110 of file SmBios.h.

◆ SMBIOS_TYPE_MANAGEMENT_CONTROLLER_HOST_INTERFACE

#define SMBIOS_TYPE_MANAGEMENT_CONTROLLER_HOST_INTERFACE   42

Definition at line 114 of file SmBios.h.

◆ SMBIOS_TYPE_MANAGEMENT_DEVICE

#define SMBIOS_TYPE_MANAGEMENT_DEVICE   34

Definition at line 106 of file SmBios.h.

◆ SMBIOS_TYPE_MANAGEMENT_DEVICE_COMPONENT

#define SMBIOS_TYPE_MANAGEMENT_DEVICE_COMPONENT   35

Definition at line 107 of file SmBios.h.

◆ SMBIOS_TYPE_MANAGEMENT_DEVICE_THRESHOLD_DATA

#define SMBIOS_TYPE_MANAGEMENT_DEVICE_THRESHOLD_DATA   36

Definition at line 108 of file SmBios.h.

◆ SMBIOS_TYPE_MEMORY_ARRAY_MAPPED_ADDRESS

#define SMBIOS_TYPE_MEMORY_ARRAY_MAPPED_ADDRESS   19

Definition at line 91 of file SmBios.h.

◆ SMBIOS_TYPE_MEMORY_CHANNEL

#define SMBIOS_TYPE_MEMORY_CHANNEL   37

Definition at line 109 of file SmBios.h.

◆ SMBIOS_TYPE_MEMORY_CONTROLLER_INFORMATION

#define SMBIOS_TYPE_MEMORY_CONTROLLER_INFORMATION   5

Definition at line 77 of file SmBios.h.

◆ SMBIOS_TYPE_MEMORY_DEVICE

#define SMBIOS_TYPE_MEMORY_DEVICE   17

Definition at line 89 of file SmBios.h.

◆ SMBIOS_TYPE_MEMORY_DEVICE_MAPPED_ADDRESS

#define SMBIOS_TYPE_MEMORY_DEVICE_MAPPED_ADDRESS   20

Definition at line 92 of file SmBios.h.

◆ SMBIOS_TYPE_MEMORY_MODULE_INFORMATON

#define SMBIOS_TYPE_MEMORY_MODULE_INFORMATON   6

Definition at line 78 of file SmBios.h.

◆ SMBIOS_TYPE_OEM_STRINGS

#define SMBIOS_TYPE_OEM_STRINGS   11

Definition at line 83 of file SmBios.h.

◆ SMBIOS_TYPE_ONBOARD_DEVICE_INFORMATION

#define SMBIOS_TYPE_ONBOARD_DEVICE_INFORMATION   10

Definition at line 82 of file SmBios.h.

◆ SMBIOS_TYPE_ONBOARD_DEVICES_EXTENDED_INFORMATION

#define SMBIOS_TYPE_ONBOARD_DEVICES_EXTENDED_INFORMATION   41

Definition at line 113 of file SmBios.h.

◆ SMBIOS_TYPE_OUT_OF_BAND_REMOTE_ACCESS

#define SMBIOS_TYPE_OUT_OF_BAND_REMOTE_ACCESS   30

Definition at line 102 of file SmBios.h.

◆ SMBIOS_TYPE_PHYSICAL_MEMORY_ARRAY

#define SMBIOS_TYPE_PHYSICAL_MEMORY_ARRAY   16

Definition at line 88 of file SmBios.h.

◆ SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION

#define SMBIOS_TYPE_PORT_CONNECTOR_INFORMATION   8

Definition at line 80 of file SmBios.h.

◆ SMBIOS_TYPE_PORTABLE_BATTERY

#define SMBIOS_TYPE_PORTABLE_BATTERY   22

Definition at line 94 of file SmBios.h.

◆ SMBIOS_TYPE_PROCESSOR_ADDITIONAL_INFORMATION

#define SMBIOS_TYPE_PROCESSOR_ADDITIONAL_INFORMATION   44

Definition at line 116 of file SmBios.h.

◆ SMBIOS_TYPE_PROCESSOR_INFORMATION

#define SMBIOS_TYPE_PROCESSOR_INFORMATION   4

Definition at line 76 of file SmBios.h.

◆ SMBIOS_TYPE_STRING_PROPERTY_INFORMATION

#define SMBIOS_TYPE_STRING_PROPERTY_INFORMATION   46

Definition at line 118 of file SmBios.h.

◆ SMBIOS_TYPE_SYSTEM_BOOT_INFORMATION

#define SMBIOS_TYPE_SYSTEM_BOOT_INFORMATION   32

Definition at line 104 of file SmBios.h.

◆ SMBIOS_TYPE_SYSTEM_CONFIGURATION_OPTIONS

#define SMBIOS_TYPE_SYSTEM_CONFIGURATION_OPTIONS   12

Definition at line 84 of file SmBios.h.

◆ SMBIOS_TYPE_SYSTEM_ENCLOSURE

#define SMBIOS_TYPE_SYSTEM_ENCLOSURE   3

Definition at line 75 of file SmBios.h.

◆ SMBIOS_TYPE_SYSTEM_EVENT_LOG

#define SMBIOS_TYPE_SYSTEM_EVENT_LOG   15

Definition at line 87 of file SmBios.h.

◆ SMBIOS_TYPE_SYSTEM_INFORMATION

#define SMBIOS_TYPE_SYSTEM_INFORMATION   1

Definition at line 73 of file SmBios.h.

◆ SMBIOS_TYPE_SYSTEM_POWER_CONTROLS

#define SMBIOS_TYPE_SYSTEM_POWER_CONTROLS   25

Definition at line 97 of file SmBios.h.

◆ SMBIOS_TYPE_SYSTEM_POWER_SUPPLY

#define SMBIOS_TYPE_SYSTEM_POWER_SUPPLY   39

Definition at line 111 of file SmBios.h.

◆ SMBIOS_TYPE_SYSTEM_RESET

#define SMBIOS_TYPE_SYSTEM_RESET   23

Definition at line 95 of file SmBios.h.

◆ SMBIOS_TYPE_SYSTEM_SLOTS

#define SMBIOS_TYPE_SYSTEM_SLOTS   9

Definition at line 81 of file SmBios.h.

◆ SMBIOS_TYPE_TEMPERATURE_PROBE

#define SMBIOS_TYPE_TEMPERATURE_PROBE   28

Definition at line 100 of file SmBios.h.

◆ SMBIOS_TYPE_TPM_DEVICE

#define SMBIOS_TYPE_TPM_DEVICE   43

Definition at line 115 of file SmBios.h.

◆ SMBIOS_TYPE_VOLTAGE_PROBE

#define SMBIOS_TYPE_VOLTAGE_PROBE   26

Definition at line 98 of file SmBios.h.

Typedef Documentation

◆ SMBIOS_HANDLE

typedef UINT16 SMBIOS_HANDLE

Specifies the structure's handle, a unique 16-bit number in the range 0 to 0FFFEh (for version 2.0) or 0 to 0FEFFh (for version 2.1 and later). The handle can be used with the Get SMBIOS Structure function to retrieve a specific structure; the handle numbers are not required to be contiguous. For v2.1 and later, handle values in the range 0FF00h to 0FFFFh are reserved for use by this specification. If the system configuration changes, a previously assigned handle might no longer exist. However once a handle has been assigned by the BIOS, the BIOS cannot re-assign that handle number to another structure.

Definition at line 152 of file SmBios.h.

◆ SMBIOS_TABLE_STRING

typedef UINT8 SMBIOS_TABLE_STRING

Text strings associated with a given SMBIOS structure are returned in the dmiStrucBuffer, appended directly after the formatted portion of the structure. This method of returning string information eliminates the need for application software to deal with pointers embedded in the SMBIOS structure. Each string is terminated with a null (00h) BYTE and the set of strings is terminated with an additional null (00h) BYTE. When the formatted portion of a SMBIOS structure references a string, it does so by specifying a non-zero string number within the structure's string-set. For example, if a string field contains 02h, it references the second string following the formatted portion of the SMBIOS structure. If a string field references no string, a null (0) is placed in that string field. If the formatted portion of the structure contains string-reference fields and all the string fields are set to 0 (no string references), the formatted section of the structure is followed by two null (00h) BYTES.

Definition at line 208 of file SmBios.h.

◆ SMBIOS_TYPE

typedef UINT8 SMBIOS_TYPE

Types 0 through 127 (7Fh) are reserved for and defined by this specification. Types 128 through 256 (80h to FFh) are available for system- and OEM-specific information.

Definition at line 140 of file SmBios.h.

Enumeration Type Documentation

◆ BASE_BOARD_TYPE

Base Board - Board Type.

Definition at line 370 of file SmBios.h.

◆ BMC_INTERFACE_TYPE

IPMI Device Information - BMC Interface Type

Enumerator
IPMIDeviceInfoInterfaceTypeKCS 

The Keyboard Controller Style.

IPMIDeviceInfoInterfaceTypeSMIC 

The Server Management Interface Chip.

IPMIDeviceInfoInterfaceTypeBT 

The Block Transfer.

IPMIDeviceInfoInterfaceTypeSSIF 

SMBus System Interface.

Definition at line 2577 of file SmBios.h.

◆ BUILTIN_POINTING_DEVICE_INTERFACE

Built-in Pointing Device - Interface.

Definition at line 2162 of file SmBios.h.

◆ BUILTIN_POINTING_DEVICE_TYPE

Built-in Pointing Device - Type

Definition at line 2147 of file SmBios.h.

◆ CACHE_ASSOCIATIVITY_DATA

Cache Information - Associativity.

Definition at line 1197 of file SmBios.h.

◆ CACHE_ERROR_TYPE_DATA

Cache Information - Error Correction Type.

Enumerator
CacheErrorSingleBit 

ECC.

CacheErrorMultiBit 

ECC.

Definition at line 1174 of file SmBios.h.

◆ CACHE_TYPE_DATA

Cache Information - System Cache Type.

Definition at line 1186 of file SmBios.h.

◆ EVENT_LOG_TYPE_DATA

System Event Log - Event Log Types.

Enumerator
EventLogTypeUnused 

0x18 - 0x7F

EventLogTypeAvailForSys 

0x80 - 0xFE

Definition at line 1706 of file SmBios.h.

◆ EVENT_LOG_VARIABLE_DATA

System Event Log - Variable Data Format Types.

Definition at line 1738 of file SmBios.h.

◆ FIRMWARE_INVENTORY_FIRMWARE_ID_FORMAT_TYPE

Firmware Inventory Firmware Id Format Type (Type 45).

Enumerator
InventoryFirmwareIdFormatTypeOem 

0x04 - 0x7F are reserved

Definition at line 2840 of file SmBios.h.

◆ FIRMWARE_INVENTORY_STATE

Firmware Inventory State Information (Type 45).

Definition at line 2859 of file SmBios.h.

◆ FIRMWARE_INVENTORY_VERSION_FORMAT_TYPE

Firmware Inventory Version Format Type (Type 45).

Enumerator
VersionFormatTypeOem 

0x04 - 0x7F are reserved

Definition at line 2828 of file SmBios.h.

◆ MC_HOST_INTERFACE_PROTOCOL_TYPE

Management Controller Host Interface - Protocol Types.

Definition at line 2727 of file SmBios.h.

◆ MC_HOST_INTERFACE_TYPE

Management Controller Host Interface - Interface Types. 00h - 3Fh: MCTP Host Interfaces

Definition at line 2719 of file SmBios.h.

◆ MEMORY_ARRAY_LOCATION

Physical Memory Array - Location.

Definition at line 1784 of file SmBios.h.

◆ MEMORY_ARRAY_USE

Physical Memory Array - Use.

Definition at line 1805 of file SmBios.h.

◆ MEMORY_CHANNEL_TYPE

Memory Channel - Channel Type.

Definition at line 2552 of file SmBios.h.

◆ MEMORY_DEVICE_TECHNOLOGY

Memory Device - Memory Technology

Definition at line 1934 of file SmBios.h.

◆ MEMORY_DEVICE_TYPE

Memory Device - Type

Definition at line 1873 of file SmBios.h.

◆ MEMORY_ERROR_CORRECTION

Physical Memory Array - Error Correction Types.

Definition at line 1818 of file SmBios.h.

◆ MEMORY_ERROR_DETECT_METHOD

Memory Controller Error Detecting Method.

Definition at line 1034 of file SmBios.h.

◆ MEMORY_ERROR_GRANULARITY

32-bit Memory Error Information - Error Granularity.

Definition at line 2068 of file SmBios.h.

◆ MEMORY_ERROR_OPERATION

32-bit Memory Error Information - Error Operation.

Definition at line 2078 of file SmBios.h.

◆ MEMORY_ERROR_TYPE

32-bit Memory Error Information - Error Type.

Definition at line 2048 of file SmBios.h.

◆ MEMORY_FORM_FACTOR

Memory Device - Form Factor.

Definition at line 1851 of file SmBios.h.

◆ MEMORY_SUPPORT_INTERLEAVE_TYPE

Memory Controller Information - Interleave Support.

Definition at line 1061 of file SmBios.h.

◆ MISC_BOOT_INFORMATION_STATUS_DATA_TYPE

System Boot Information - System Boot Status.

Definition at line 2417 of file SmBios.h.

◆ MISC_CHASSIS_SECURITY_STATE

System Enclosure or Chassis Security Status.

Definition at line 464 of file SmBios.h.

◆ MISC_CHASSIS_STATE

System Enclosure or Chassis States .

Definition at line 452 of file SmBios.h.

◆ MISC_CHASSIS_TYPE

System Enclosure or Chassis Types

Definition at line 410 of file SmBios.h.

◆ MISC_MANAGEMENT_DEVICE_ADDRESS_TYPE

Management Device - Address Type.

Definition at line 2488 of file SmBios.h.

◆ MISC_MANAGEMENT_DEVICE_TYPE

Management Device - Type.

Definition at line 2469 of file SmBios.h.

◆ MISC_ONBOARD_DEVICE_TYPE

On Board Devices Information - Device Types.

Definition at line 1612 of file SmBios.h.

◆ MISC_PORT_CONNECTOR_TYPE

Port Connector Information - Connector Types.

Definition at line 1244 of file SmBios.h.

◆ MISC_PORT_TYPE

Port Connector Information - Port Types

Enumerator
PortTypeMfdp 

Multi-Function Display Port.

Definition at line 1292 of file SmBios.h.

◆ MISC_SLOT_DATA_BUS_WIDTH

System Slots - Slot Data Bus Width.

Enumerator
SlotDataBusWidth1X 

Or X1.

SlotDataBusWidth2X 

Or X2.

SlotDataBusWidth4X 

Or X4.

SlotDataBusWidth8X 

Or X8.

SlotDataBusWidth12X 

Or X12.

SlotDataBusWidth16X 

Or X16.

SlotDataBusWidth32X 

Or X32.

Definition at line 1438 of file SmBios.h.

◆ MISC_SLOT_HEIGHT

System Slots - Slot Height

Definition at line 1539 of file SmBios.h.

◆ MISC_SLOT_INFORMATION

System Slots - Slot Information.

Definition at line 1478 of file SmBios.h.

◆ MISC_SLOT_LENGTH

System Slots - Slot Length.

Definition at line 1502 of file SmBios.h.

◆ MISC_SLOT_PHYSICAL_WIDTH

System Slots - Slot Physical Width.

Enumerator
SlotPhysicalWidth1X 

Or X1.

SlotPhysicalWidth2X 

Or X2.

SlotPhysicalWidth4X 

Or X4.

SlotPhysicalWidth8X 

Or X8.

SlotPhysicalWidth12X 

Or X12.

SlotPhysicalWidth16X 

Or X16.

SlotPhysicalWidth32X 

Or X32.

Definition at line 1458 of file SmBios.h.

◆ MISC_SLOT_TYPE

System Slots - Slot Type

Enumerator
SlotTypePciExpressMini52pinWithBSKO 

PCI Express Mini 52-pin (CEM spec. 2.0) with bottom-side keep-outs.

SlotTypePciExpressMini52pinWithoutBSKO 

PCI Express Mini 52-pin (CEM spec. 2.0) without bottom-side keep-outs.

SlotTypePciExpressMini76pin 

PCI Express Mini 76-pin (CEM spec. 2.0) Corresponds to Display-Mini card.

SlotTypePCIExpressGen4SFF_8639 

U.2.

SlotTypePCIExpressGen5SFF_8639 

U.2.

SlotTypeOCPNIC30SmallFormFactor 

SFF.

SlotTypeOCPNIC30LargeFormFactor 

LFF.

Definition at line 1353 of file SmBios.h.

◆ MISC_SLOT_USAGE

System Slots - Current Usage.

Definition at line 1491 of file SmBios.h.

◆ MISC_SYSTEM_WAKEUP_TYPE

System Wake-up Type.

Definition at line 323 of file SmBios.h.

◆ ONBOARD_DEVICE_EXTENDED_INFO_TYPE

Onboard Devices Extended Information - Onboard Device Types.

Definition at line 2669 of file SmBios.h.

◆ PORTABLE_BATTERY_DEVICE_CHEMISTRY

Portable Battery - Device Chemistry

Definition at line 2195 of file SmBios.h.

◆ PROCESSOR_FAMILY2_DATA

Processor Information2 - Processor Family2.

Definition at line 745 of file SmBios.h.

◆ PROCESSOR_FAMILY_DATA

Processor Information - Processor Family.

Enumerator
ProcessorFamilyAmdASeries 

SMBIOS spec 2.8.0 updated the name.

ProcessorFamilyIntelCoreSolo 

SMBIOS spec 2.6 updated this value.

ProcessorFamilyViaC7M 

Smbios spec 3.8 updated this value.

Definition at line 535 of file SmBios.h.

◆ PROCESSOR_SPECIFIC_BLOCK_ARCH_TYPE

Processor Specific Block - Processor Architecture Type

Definition at line 2761 of file SmBios.h.

◆ PROCESSOR_TYPE_DATA

Processor Information - Processor Type.

Definition at line 523 of file SmBios.h.

◆ PROCESSOR_UPGRADE

Processor Information - Processor Upgrade.

Enumerator
ProcessorUpgradePiggyBack 

Replaceable.

ProcessorUpgradeSocketA 

Socket 462.

ProcessorUpgradeSocketLGA1155 

SMBIOS spec 2.8.0 updated the name.

Definition at line 804 of file SmBios.h.

◆ STRING_PROPERTY_ID

String Property IDs (Type 46).

Enumerator
StringPropertyIdBiosVendor 

Reserved 0x0002 - 0x7FFF.

StringPropertyIdOem 

BIOS vendor 0x8000 - 0xBFFF.

Definition at line 2906 of file SmBios.h.