📄 smbios.inc
字号:
SMB28_STR struc ; Type 28: Temperature Probe
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB28_DESC db ? ; 04: Description string
SMB28_LOC db ? ; 05: Location and Status record (see SMB28_LOC_REC)
SMB28_MAX dw ? ; 06: Maximum value in millivolts (8000h = Unknown)
SMB28_MIN dw ? ; 08: Minimum value in millivolts (8000h = Unknown)
SMB28_RES dw ? ; 0A: Resolution in tenths of millivolts (8000h = Unknown)
SMB28_TOL dw ? ; 0C: Tolerance in plus/minus millivolts (8000h = Unknown)
SMB28_ACC dw ? ; 0E: Accuracy in plus/minus 1/100th of a percent (8000h = Unknown)
SMB28_OEM dd ? ; 10: OEM-defined
SMB28_NOM dw ? ; 14: Nominal value in millivolts (8000h = Unknown)
SMB28_STR ends
SMB28_LOC_REC record \
$SMB28_LOC_STAT:3, \
$SMB28_LOC_LOC:5
@SMB28_LOC_STAT_OTHER equ 01h ; Other
@SMB28_LOC_STAT_UNK equ 02h ; Unknown
@SMB28_LOC_STAT_OK equ 03h ; OK
@SMB28_LOC_STAT_NCRIT equ 04h ; Non-critical
@SMB28_LOC_STAT_CRIT equ 05h ; Critical
@SMB28_LOC_STAT_NREC equ 06h ; Non-recoverable
@SMB28_LOC_LOC_OTHER equ 01h ; Other
@SMB28_LOC_LOC_UNK equ 02h ; Unknown
@SMB28_LOC_LOC_PROC equ 03h ; Processor
@SMB28_LOC_LOC_DISK equ 04h ; Disk
@SMB28_LOC_LOC_PERI equ 05h ; Peripheral Bay
@SMB28_LOC_LOC_SMM equ 06h ; System Management Module
@SMB28_LOC_LOC_MBRD equ 07h ; Motherboard
@SMB28_LOC_LOC_MMOD equ 08h ; Memory Module
@SMB28_LOC_LOC_PMOD equ 09h ; Processor Module
@SMB28_LOC_LOC_PWR equ 0Ah ; Power Unit
@SMB28_LOC_LOC_ADD equ 0Bh ; Add-in card
@SMB28_LOC_LOC_FPB equ 0Ch ; Front Panel Board
@SMB28_LOC_LOC_BPB equ 0Dh ; Back Panel Board
@SMB28_LOC_LOC_PSB equ 0Eh ; Power System Board
@SMB28_LOC_LOC_DBP equ 0Fh ; Drive Back Plane
; =========================== Type 29: Electrical Current Probe =============
SMB29_STR struc ; Type 29: Electrical Current Probe
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB29_DESC db ? ; 04: Description string
SMB29_LOC db ? ; 05: Location and Status record (see SMB29_LOC_REC)
SMB29_MAX dw ? ; 06: Maximum value in millivolts (8000h = Unknown)
SMB29_MIN dw ? ; 08: Minimum value in millivolts (8000h = Unknown)
SMB29_RES dw ? ; 0A: Resolution in tenths of millivolts (8000h = Unknown)
SMB29_TOL dw ? ; 0C: Tolerance in plus/minus millivolts (8000h = Unknown)
SMB29_ACC dw ? ; 0E: Accuracy in plus/minus 1/100th of a percent (8000h = Unknown)
SMB29_OEM dd ? ; 10: OEM-defined
SMB29_NOM dw ? ; 14: Nominal value in millivolts (8000h = Unknown)
SMB29_STR ends
SMB29_LOC_REC record \
$SMB29_LOC_STAT:3, \
$SMB29_LOC_LOC:5
@SMB29_LOC_STAT_OTHER equ 01h ; Other
@SMB29_LOC_STAT_UNK equ 02h ; Unknown
@SMB29_LOC_STAT_OK equ 03h ; OK
@SMB29_LOC_STAT_NCRIT equ 04h ; Non-critical
@SMB29_LOC_STAT_CRIT equ 05h ; Critical
@SMB29_LOC_STAT_NREC equ 06h ; Non-recoverable
@SMB29_LOC_LOC_OTHER equ 01h ; Other
@SMB29_LOC_LOC_UNK equ 02h ; Unknown
@SMB29_LOC_LOC_PROC equ 03h ; Processor
@SMB29_LOC_LOC_DISK equ 04h ; Disk
@SMB29_LOC_LOC_PERI equ 05h ; Peripheral Bay
@SMB29_LOC_LOC_SMM equ 06h ; System Management Module
@SMB29_LOC_LOC_MBRD equ 07h ; Motherboard
@SMB29_LOC_LOC_MMOD equ 08h ; Memory Module
@SMB29_LOC_LOC_PMOD equ 09h ; Processor Module
@SMB29_LOC_LOC_PWR equ 0Ah ; Power Unit
@SMB29_LOC_LOC_ADD equ 0Bh ; Add-in card
; =========================== Type 30: Out-of-Band Remote Access ============
SMB30_STR struc ; Type 30: Out-of-Band Remote Access
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB30_MFR db ? ; 04: Manufacturer Name string
SMB30_CON db ? ; 05: Connections record (see SMB30_CON_REC)
SMB30_STR ends
SMB30_CON_REC record \
$SMB30_CON_RSV2:6, \
$SMB30_CON_OCE:1, \
$SMB30_CON_ICE:1
@SMB30_CON_CE_FALSE equ 0 ; False
@SMB30_CON_CE_TRUE equ 1 ; True
; =========================== Type 31: Boot Integrity Services (BIS) Entry Point
SMB31_STR struc ; Type 31: Boot Integrity Services (BIS) Entry Point
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB31_CSUM db ? ; 04: Checksum
SMB31_RSV1 db ? ; 05: Reserved
SMB31_RSV2 dw ? ; 06: Reserved
SMB31_PTR16 dd ? ; 08: Entry point for 16-bit callers
SMB31_PHYS32 dd ? ; 0C: Physical address for 32-bit callers
SMB31_RSV3 dq ? ; 10: Reserved
SMB31_RSV4 dd ? ; 18: Reserved
SMB31_STR ends
; =========================== Type 32: System Boot Information ==============
SMB32_STR struc ; Type 32: System Boot Information
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB32_RSV db 6 dup (?) ; 04: Reserved
SMB32_STAT db ? ; 0A: Boot Status (see @SMB32_STAT_xxx)
SMB32_DATA db 9 dup (?) ; 0B: Additional Data
SMB32_STR ends
@SMB32_STAT_NOERR equ 0 ; No errors detected
@SMB32_STAT_NOBOOT equ 1 ; No bootable media
@SMB32_STAT_NOLOAD equ 2 ; The 'normal' OS failed to load
@SMB32_STAT_HWFAIL equ 3 ; Firmware-detected HW failure, including 'unknown' failure types
@SMB32_STAT_OSFAIL equ 4 ; OS-detected HW failure
@SMB32_STAT_USER equ 5 ; User-requested boot
@SMB32_STAT_SEC equ 6 ; System security violation
@SMB32_STAT_PREV equ 7 ; Previously requested image
@SMB32_STAT_WATCH equ 8 ; A system watchdog timer expired
; =========================== Type 33: 64-bit Memory Error Information ======
SMB33_STR struc ; Type 33: 64-bit Memory Error Information
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB33_ERRTYPE db ? ; 04: Error Type enum (see @SMB18_ERRTYPE_xxx)
SMB33_ERRGRAN db ? ; 05: Error Granularity enum (see @SMB18_ERRGRAN_xxx)
SMB33_ERROPER db ? ; 06: Error Operation enum (see @SMB18_ERROPER_xxx)
SMB33_VENSYN dd ? ; 07: Vendor Syndrome (ECC or CRC) (00000000h = Unknown)
SMB33_MAEADDR dq ? ; 0B: Memory Array Error Address (8000000000000000h = Unknown)
SMB33_DEADDR dq ? ; 13: Device Error Address (8000000000000000h = Unknown)
SMB33_ERRRES dd ? ; 1B: Error Resolution (80000000h = Unknown)
SMB33_STR ends
; =========================== Type 34: Management Device ====================
SMB34_STR struc ; Type 34: Management Device
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB34_DESC db ? ; 04: Description string
SMB34_TYPE db ? ; 05: Type enum (see @SMB34_TYPE_xxx)
SMB34_ADDR dd ? ; 06: Address
SMB34_ATYP db ? ; 0A: Address Type enum (see @SMB34_ATYP_xxx)
SMB34_STR ends
@SMB34_TYPE_OTHER equ 01h ; Other
@SMB34_TYPE_UNK equ 02h ; Unknown
@SMB34_TYPE_NS_LM75 equ 03h ; National Semiconductor LM75
@SMB34_TYPE_NS_LM78 equ 04h ; National Semiconductor LM78
@SMB34_TYPE_NS_LM79 equ 05h ; National Semiconductor LM79
@SMB34_TYPE_NS_LM80 equ 06h ; National Semiconductor LM80
@SMB34_TYPE_NS_LM81 equ 07h ; National Semiconductor LM81
@SMB34_TYPE_ANADEV equ 08h ; Analog Devices ADM9240
@SMB34_TYPE_DALLAS equ 09h ; Dallas Semiconductor DS1780
@SMB34_TYPE_MAXIM equ 0Ah ; Maxim 1617
@SMB34_TYPE_GENESYS equ 0Bh ; Genesys GL518SM
@SMB34_TYPE_WINBOND equ 0Ch ; Winbond W83871D
@SMB34_TYPE_HOLTEK equ 0Dh ; Holtek HT82H791
@SMB34_ATYP_OTHER equ 01h ; Other
@SMB34_ATYP_UNK equ 02h ; Unknown
@SMB34_ATYP_IO equ 03h ; I/O Port
@SMB34_ATYP_MEM equ 04h ; Memory
@SMB34_ATYP_SMB equ 05h ; SM Bus
; =========================== Type 35: Management Device Component ==========
SMB35_STR struc ; Type 35: Management Device Component
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB35_DESC db ? ; 04: Description string
SMB35_MHNDL dw ? ; 05: Management Device Handle (Type 34)
SMB35_CHNDL dw ? ; 07: Component Handle (Types 26, 27, 28, or 29)
SMB35_THNDL dw ? ; 09: Threshold Handle (Type 36)
SMB35_STR ends
; =========================== Type 36: Management Device Threshold Data =====
SMB36_STR struc ; Type 36: Management Device Threshold Data
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB36_LT_NC dw ? ; 04: Lower Threshold - Non-critical (8000h = Unknown)
SMB36_UT_NC dw ? ; 06: Upper Threshold - Non-critical (8000h = Unknown)
SMB36_LT_C dw ? ; 08: Lower Threshold - Critical (8000h = Unknown)
SMB36_UT_C dw ? ; 0A: Upper Threshold - Critical (8000h = Unknown)
SMB36_LT_NR dw ? ; 0C: Lower Threshold - Non-recoverable (8000h = Unknown)
SMB36_UT_NR dw ? ; 0E: Upper Threshold - Non-recoverable (8000h = Unknown)
SMB36_STR ends
; =========================== Type 37: Memory Channel =======================
SMB37_STR struc ; Type 37: Memory Channel
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB37_TYPE db ? ; 04: Channel Type enum (see @SMB37_TYPE_xxx)
SMB37_MCLOAD db ? ; 05: Maximum Channel Load
SMB37_CNT db ? ; 06: Memory Device Count
SMB37_MD db ? ; 07: Memory Devices (see SMB37_MD_STR)
SMB37_STR ends
SMB37_MD_STR struc
SMB37_MD_LOAD db ? ; 00: Memory Device Load
SMB37_MD_HNDL dw ? ; 01: Memory Device Handle (Type 17)
SMB37_MD_STR ends
@SMB37_TYPE_OTHER equ 01h ; Other
@SMB37_TYPE_UNK equ 02h ; Unknown
@SMB37_TYPE_RAMBUS equ 03h ; RAMBUS
@SMB37_TYPE_SYNC equ 04h ; SyncLink
; =========================== Type 38: IPMI Device Information ==============
SMB38_STR struc ; Type 37: IPMI Device Information
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB38_TYPE db ? ; 04: Baseboard Management Controller (BMC) Interface Type enum (see @SMB38_TYPE_xxx)
SMB38_REV db ? ; 05: IPMI Specification Revision in BCD
SMB38_SLAVE db ? ; 06: I2C Slave Address
SMB38_DEV db ? ; 07: NV Storage Device Address
SMB38_BASE dq ? ; 08: Base Address
SMB38_BAMII db ? ; 10: Base Address Modifier & Interrupt Info (see SMB38_BAMII_REC)
SMB38_INTNO db ? ; 11: Interrupt # for IPMI System Interface (00=unspecified/unsupported)
SMB38_STR ends
@SMB38_TYPE_UNK equ 00h ; Unknown
@SMB38_TYPE_KCS equ 01h ; Keyboard Controller Style
@SMB38_TYPE_SMIC equ 02h ; Server Mangement Interface Chip
@SMB38_TYPE_BT equ 03h ; Block Transfer
SMB38_BAMII_REC record \
$SMB38_BAMII_REGSP:2, \
$SMB38_BAMII_RSV5:1, \
$SMB38_BAMII_LSBIT:1, \
$SMB38_BAMII_INTINFO:1, \
$SMB38_BAMII_RSV2:1, \
$SMB38_BAMII_IPOL:1, \
$SMB38_BAMII_INTTRIG:1
@SMB38_BAMII_REGSP_BYTE equ 00b ; Interface Registers are on successive byte boundaries
@SMB38_BAMII_REGSP_DWORD equ 01b ; Interface Registers are on 32-byte boundaries
@SMB38_BAMII_REGSP_WORD equ 10b ; Interface Registers are on 16-byte boundaries
@SMB38_BAMII_REGSP_RSV3 equ 11b ; (Reserved)
@SMB38_BAMII_LSBIT1 equ 1 ; Address bit 0 is 1
@SMB38_BAMII_LSBIT0 equ 0 ; Address bit 0 is 0
@SMB38_BAMII_INTINFO_SPEC equ 1 ; Interrupt Info Specified
@SMB38_BAMII_INTINFO_NOTSPEC equ 0 ; Interrupt Info Not specified
@SMB38_BAMII_IPOL_ACTLOW equ 0 ; Interrupt Polarity Active Low
@SMB38_BAMII_IPOL_ACTHIGH equ 1 ; Interrupt Polarity Active High
@SMB38_BAMII_INTTRIG_EDGE equ 0 ; Interrupt Trigger Mode Edge
@SMB38_BAMII_INTTRIG_LEVEL equ 1 ; Interrupt Trigger Mode Level
; =========================== Type 39: System Power Supply ==================
SMB39_STR struc ; Type 39: System Power Supply
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB39_GRP db ? ; 04: Power Unit Group
SMB39_LOC db ? ; 05: Location string
SMB39_DEV db ? ; 06: Device Name string
SMB39_MFR db ? ; 07: Manufacturer string
SMB39_SER db ? ; 08: Serial # string
SMB39_TAG db ? ; 09: Asset Tag # string
SMB39_PART db ? ; 0A: Part # string
SMB39_REV db ? ; 0B: Revision Level string
SMB39_CAP dw ? ; 0C: Max Power Capacity in Watts (8000h = Unknown)
SMB39_CHAR dw ? ; 0E: Power Supply Characteristics record (see SMB39_CHAR_REC)
SMB39_IVP dw ? ; 10: Input Voltage Probe Handle (Type 26)
SMB39_CD dw ? ; 12: Cooling Device Handle (Type 27)
SMB39_ICP dw ? ; 14: Input Current Probe Handle (Type 29)
SMB39_STR ends
SMB39_CHAR_REC record \
$SMB39_CHAR_RSV14:2, \
$SMB39_CHAR_TYPE:4, \
$SMB39_CHAR_STAT:3, \
$SMB39_CHAR_RANGE:4, \
$SMB39_CHAR_UNPL:1, \
$SMB39_CHAR_PRES:1, \
$SMB39_CHAR_REPL:1
@SMB39_CHAR_TYPE_OTHER equ 0001b ; Other
@SMB39_CHAR_TYPE_UNK equ 0010b ; Unknown
@SMB39_CHAR_TYPE_LIN equ 0011b ; Linear
@SMB39_CHAR_TYPE_SW equ 0100b ; Switching
@SMB39_CHAR_TYPE_BATT equ 0101b ; Battery
@SMB39_CHAR_TYPE_UPS equ 0110b ; UPS
@SMB39_CHAR_TYPE_CONV equ 0111b ; Converter
@SMB39_CHAR_TYPE_REG equ 1000b ; Regulator
@SMB39_CHAR_STAT_OTHER equ 001b ; Other
@SMB39_CHAR_STAT_UNK equ 010b ; Unknown
@SMB39_CHAR_STAT_OK equ 011b ; OK
@SMB39_CHAR_STAT_NCRIT equ 100b ; Non-critical
@SMB39_CHAR_STAT_CRIT equ 101b ; Critical (off-line)
@SMB39_CHAR_RANGE_OTHER equ 0001b ; Other
@SMB39_CHAR_RANGE_UNK equ 0010 ; Unknown
@SMB39_CHAR_RANGE_MAN equ 0011 ; Manual
@SMB39_CHAR_RANGE_AUTO equ 0100 ; Auto-switch
@SMB39_CHAR_RANGE_WIDE equ 0101 ; Wide range
@SMB39_CHAR_RANGE_NA equ 0110 ; Not applicable
; =========================== Type 126: Inactive ============================
SMB126_STR struc ; Type 126: Inactive
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB126_DATA db ? ; 04: Data
SMB126_STR ends
; =========================== Type 126: End-of-Table ========================
SMB127_STR struc ; Type 127: End-of-Table
db (type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB127_STR ends
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -