1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
|
ECHO --Including: SMBHDR.EQU
; Inclusion guard
IFNDEF _smbhdr_equ_
_smbhdr_equ_ EQU 1
;----------------------------------------------------------------------------
; Do not change any structure definition unless otherwise specified
;----------------------------------------------------------------------------
;****************************************************************************
;****************************************************************************
;** **
;** (C)Copyright 1985-2009, American Megatrends, Inc. **
;** **
;** All Rights Reserved. **
;** **
;** 5555 Oakbrook Pkwy, Suite 200, Norcross, GA 30093 **
;** **
;** Phone: (770)-246-8600 **
;** **
;****************************************************************************
;****************************************************************************
;****************************************************************************
; $Header: /Alaska/BIN/Modules/SMBIOS/SmbiosStaticData/Smbhdr.equ 4 6/02/09 4:47p Davidd $
;
; $Revision: 4 $
;
; $Date: 6/02/09 4:47p $
;****************************************************************************
; Revision History
; ----------------
; $Log: /Alaska/BIN/Modules/SMBIOS/SmbiosStaticData/Smbhdr.equ $
;
; 4 6/02/09 4:47p Davidd
; Updated AMI headers (EIP 22180)
;
; 3 4/13/07 11:33a Davidd
; Updated the year in the top and bottom copyright headers.
;
; 2 12/15/06 5:34p Davidd
; Code cleanup and reformatted to coding standard.
;
; 1 4/29/05 2:15p Davidd
; Initial checkin.
;
;****************************************************************************
;----------------------------------------------------------------------------
; This release implements SMBIOS 2.4 specification
;----------------------------------------------------------------------------
SMBIOS_VERSION EQU 24h ; 2.4
SMBIOS_MAJOR_VERSION EQU 02h ; Major Version 2
SMBIOS_MINOR_VERSION EQU 04h ; Minor Version 4
;----------------------------------------------------------------------------
; OEM GPNV STRUCTURE INFORMATION
;----------------------------------------------------------------------------
MAX_MEMORY_GPNV_DATAID EQU 08h ; max #of dataid in memory mapped GPNV
MAX_IO_GPNV_DATAID EQU 08h ; max #of dataid in io mapped GPNV
;----------------------------------------------------------------------------
; EVENT LOG INFORMATION
;----------------------------------------------------------------------------
IFDEF MKF_EVENTLOG_VERSION
NO_OF_SUPPORTED_EVENTS EQU MKF_NO_OF_SUPPORTED_EVENTS
ELSE
NO_OF_SUPPORTED_EVENTS EQU 06h
LENGTH_OF_EACH_LOG_TYPE_DESC EQU 02h
ENDIF ; MKF_EVENTLOG_VERSION
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; HEADER OF SMBIOS DATA MODULE
;----------------------------------------------------------------------------
SMBDataModuleHeaderSTRUC STRUC
bSignature BYTE 8 DUP(?) ; _AMIDMI_ signature
wSMBIOSVer WORD ? ; SMBIOS Spec Ver#
wAMIImplementationVer WORD ? ; AMI Implementation Ver#
bConfigurationInfo BYTE ? ; total #of configuration supported (1-based)
wLength WORD ? ; length of data module
bReserved BYTE ? ; reserved
SMBDataModuleHeaderSTRUC ENDS
;----------------------------------------------------------------------------
; SMBIOSInfo Details
;----------------------------------------------------------------------------
smbios_runtime_bit EQU 00000001b; 0 = SMBIOS POST active
; 1 = SMBIOS Runtime active
smbios_gpnv_data_bit EQU 00000010b; 0 = SMBIOS data in GPNV not changed
; 1 = SMBIOS data in GPNV modified
; bit15-2....NOT USED
;----------------------------------------------------------------------------
; SMBIOS INTERNAL DATA STRUCTURE
;----------------------------------------------------------------------------
SMBInternalDataSTRUC STRUC
dSMBStorageBase DWORD ? ; memory mapped storage base
dSMBStorageSize DWORD ? ; memory mapped storage size
wSMBNumRuntimeStruc WORD ? ; #of valid runtime structures
wSMBNumRomStruc WORD ? ; #of structures in ROM
wSMBRomStructuresLength WORD ? ; total length of all ROM structures
wSMBStructuresSegment WORD ? ; Segment of the data structures in RAM
wSMBStructuresStart WORD ? ; start of data structures in RAM
wSMBCurrentStructuresEnd WORD ? ; end of current data structures in RAM + 1
wSMBAvailableStructuresEnd WORD ? ; end of space available for structures + 1
wCPUInternalClock WORD ? ; CPU internal clock
wExternalClock WORD ? ; CPU Bus clock
SMBInternalDataSTRUC ENDS
;----------------------------------------------------------------------------
; SMBIOS INSTALLATION STRUCTURE
;----------------------------------------------------------------------------
SMBTableHeaderSTRUC STRUCT
bAnchorStr BYTE 4 DUP (?)
bChecksum BYTE ?
bLength BYTE ?
bMajorVer BYTE ?
bMinorVer BYTE ?
wMaxStrucSize WORD ?
bRevision BYTE ?
bFormattedArea BYTE 5 DUP (?)
bIntAnchorStr BYTE 5 DUP (?)
bIntChecksum BYTE ?
wStrucTblLen WORD ?
dStrucTblAddr DWORD ?
wNumSMBStruc WORD ?
bSMBRevision BYTE ?
SMBTableHeaderSTRUC ENDS
;----------------------------------------------------------------------------
; STRUCTURE OF DATA BUFFER IN SMBIOS FUNCTION 52H
;----------------------------------------------------------------------------
SMBIOSFun52BufferSTRUC STRUC
bCommand BYTE ?
bFieldOffset BYTE ?
dChangeMask DWORD ?
dChangeValue DWORD ?
wDataLength WORD ?
dStructureHeader DWORD ?
bStructureData BYTE ?
SMBIOSFun52BufferSTRUC ENDS
;----------------------------------------------------------------------------
; STRUCTURE OF DATA BUFFER IN SMBIOS FUNCTION 53H
;----------------------------------------------------------------------------
SMBIOSFun53BufferSTRUC STRUC
bChangeStatus BYTE ?
bChangeType BYTE ?
wChangeHandle WORD ?
bChangeReserved BYTE 12 DUP (?)
SMBIOSFun53BufferSTRUC ENDS
;----------------------------------------------------------------------------
; STRUCTURE USED IN FUNC 52H
;----------------------------------------------------------------------------
F52_FIELD_ABSENT EQU 0FFh ; absent field
F52_STRING_DATA_TYPE EQU 80h ; bit-7 = 1..string data type
; 0..binary data
F52_ONE_TIME_MODIFIABLE = 40h ; bit-6 = 1..one time modifiable
; 0..modifiable always
F52_BYTE EQU 01h ; length of a BYTE data
F52_WORD EQU 02h ; length of a WORD data
F52_DWORD EQU 04h ; length of a DWORD data
F52_STATUS_MODIFIED EQU 01h ; bit-0 = 1..this field is not modifiable any more
; bit7-1= reserved for future use
;<AMI_SHDR_START>
;----------------------------------------------------------------------------
; Name: ModificationHeaderSTRUC
;
; Fields: Name Type Description
; -------------------------------------------------------------
; wLength WORD length of the information in BYTEs
; including this word
; bType BYTE SMBIOS structure type
;
; Description:
;
;----------------------------------------------------------------------------
;<AMI_SHDR_END>
ModificationHeaderSTRUC STRUC
wLength WORD ?
bType BYTE ? ; structure type
ModificationHeaderSTRUC ENDS
;<AMI_SHDR_START>
;----------------------------------------------------------------------------
; Name: ModificationKeyFieldSTRUC
;
; Fields: Name Type Description
; -------------------------------------------------------------
; bOffset BYTE offset of the key-field inside the structure
; FF -> there is no key-field
; bType BYTE Data Type
; Bit-7 = 0..Binary Data
; 1..String Data
; Bit-6 = 0..modifiable always
; 1..One time modifiable
; Bit5-0= reserved for future use
; bLength BYTE Data Length in Bytes
; Bit7-0= data length in BYTEs
; Description:
;
;----------------------------------------------------------------------------
;<AMI_SHDR_END>
ModificationKeyFieldSTRUC STRUC
bOffset BYTE ? ; offset of the key-field inside the structure
; FF -> there is no key-field
bType BYTE ? ; Data Type
; Bit-7 = 0..Binary Data
; 1..String Data
; Bit-6 = 0..modifiable always
; 1..One time modifiable
; Bit5-0= reserved for future use
bLength BYTE ? ; Data Length in Bytes
; Bit7-0= data length in BYTEs
ModificationKeyFieldSTRUC ENDS
;<AMI_SHDR_START>
;----------------------------------------------------------------------------
; Name: ModificationFieldSTRUC
;
; Fields: Name Type Description
; -------------------------------------------------------------
; bOffset BYTE offset of the key-field inside the structure
; FF -> there is no key-field
; bType BYTE Data Type
; Bit-7 = 0..Binary Data
; 1..String Data
; Bit-6 = 0..modifiable always
; 1..One time modifiable
; Bit5-0= reserved for future use
; bLength BYTE Data Length in Bytes
; Bit7-0= data length in BYTEs
; bStatus BYTE Status of the field
; Description:
;
;----------------------------------------------------------------------------
;<AMI_SHDR_END>
ModificationFieldSTRUC STRUC
bOffset BYTE ? ; offset of the key-field inside the structure
; FF -> there is no key-field
bType BYTE ? ; Data Type
; Bit-7 = 0..Binary Data
; 1..String Data
; Bit-6 = 0..modifiable always
; 1..One time modifiable
; Bit5-0= reserved for future use
bLength BYTE ? ; Data Length in Bytes
; Bit7-0= data length in BYTEs
bStatus BYTE ? ; status of this field
ModificationFieldSTRUC ENDS
;----------------------------------------------------------------------------
; EQUATES USED IN SMBIOS FUNCTION 53H
;----------------------------------------------------------------------------
; equates used in SMBIOS Change Status
SMBIOS_NO_CHANGE EQU 00h ; 00h..SMBIOS No Change
SMBIOS_OTHER_CHANGE EQU 01h ; 01h..SMBIOS Other Change
SMBIOS_UNKNOWN_CHANGE EQU 02h ; 02h..SMBIOS Unknown Change
SMBIOS_SINGLE_STRUCTURE_AFFECTED EQU 03h ; 03h..SMBIOS Single Structure Affected
SMBIOS_MULTIPLE_STRUCTURE_AFFECTED EQU 04h ; 04h..SMBIOS Multiple Structure Affected
; equates used in SMBIOS Change Type
SMBIOS_ONE_MORE_STRUCTURE_CHANGED EQU 00000001b ; Bit-0 = 1, One/More Structure was changed
SMBIOS_ONE_MORE_STRUCTURE_ADDED EQU 00000010b ; Bit-1 = 1, One/More Structure was added
; Bit7-2.....Reserved
;----------------------------------------------------------------------------
; End of Inclusion guard
ENDIF ;_smbhdr_equ_
;----------------------------------------------------------------------------
;****************************************************************************
;****************************************************************************
;** **
;** (C)Copyright 1985-2009, American Megatrends, Inc. **
;** **
;** All Rights Reserved. **
;** **
;** 5555 Oakbrook Pkwy, Suite 200, Norcross, GA 30093 **
;** **
;** Phone: (770)-246-8600 **
;** **
;****************************************************************************
;****************************************************************************
|