296 #define SMB_BBT_PROCMEM 0xB /* processor/memory module */
297 #define SMB_BBT_PROCIO 0xC /* processor/i/o module */
298 #define SMB_BBT_INTER 0xD /* interconnect board */
299
300 /*
301 * SMBIOS Chassis description. See DSP0134 Section 7.4 for more information.
302 * We move the lock bit of the type field into smbc_lock for easier processing.
303 */
304 typedef struct smbios_chassis {
305 uint32_t smbc_oemdata; /* OEM-specific data */
306 uint8_t smbc_lock; /* lock present? */
307 uint8_t smbc_type; /* type */
308 uint8_t smbc_bustate; /* boot-up state */
309 uint8_t smbc_psstate; /* power supply state */
310 uint8_t smbc_thstate; /* thermal state */
311 uint8_t smbc_security; /* security status */
312 uint8_t smbc_uheight; /* enclosure height in U's */
313 uint8_t smbc_cords; /* number of power cords */
314 uint8_t smbc_elems; /* number of element records (n) */
315 uint8_t smbc_elemlen; /* length of contained element (m) */
316 const char *smbc_sku; /* SKU number */
317 } smbios_chassis_t;
318
319 #define SMB_CHT_OTHER 0x01 /* other */
320 #define SMB_CHT_UNKNOWN 0x02 /* unknown */
321 #define SMB_CHT_DESKTOP 0x03 /* desktop */
322 #define SMB_CHT_LPDESKTOP 0x04 /* low-profile desktop */
323 #define SMB_CHT_PIZZA 0x05 /* pizza box */
324 #define SMB_CHT_MINITOWER 0x06 /* mini-tower */
325 #define SMB_CHT_TOWER 0x07 /* tower */
326 #define SMB_CHT_PORTABLE 0x08 /* portable */
327 #define SMB_CHT_LAPTOP 0x09 /* laptop */
328 #define SMB_CHT_NOTEBOOK 0x0A /* notebook */
329 #define SMB_CHT_HANDHELD 0x0B /* hand-held */
330 #define SMB_CHT_DOCK 0x0C /* docking station */
331 #define SMB_CHT_ALLIN1 0x0D /* all-in-one */
332 #define SMB_CHT_SUBNOTE 0x0E /* sub-notebook */
333 #define SMB_CHT_SPACESAVE 0x0F /* space-saving */
334 #define SMB_CHT_LUNCHBOX 0x10 /* lunchbox */
335 #define SMB_CHT_MAIN 0x11 /* main server chassis */
336 #define SMB_CHT_EXPANSION 0x12 /* expansion chassis */
|
296 #define SMB_BBT_PROCMEM 0xB /* processor/memory module */
297 #define SMB_BBT_PROCIO 0xC /* processor/i/o module */
298 #define SMB_BBT_INTER 0xD /* interconnect board */
299
300 /*
301 * SMBIOS Chassis description. See DSP0134 Section 7.4 for more information.
302 * We move the lock bit of the type field into smbc_lock for easier processing.
303 */
304 typedef struct smbios_chassis {
305 uint32_t smbc_oemdata; /* OEM-specific data */
306 uint8_t smbc_lock; /* lock present? */
307 uint8_t smbc_type; /* type */
308 uint8_t smbc_bustate; /* boot-up state */
309 uint8_t smbc_psstate; /* power supply state */
310 uint8_t smbc_thstate; /* thermal state */
311 uint8_t smbc_security; /* security status */
312 uint8_t smbc_uheight; /* enclosure height in U's */
313 uint8_t smbc_cords; /* number of power cords */
314 uint8_t smbc_elems; /* number of element records (n) */
315 uint8_t smbc_elemlen; /* length of contained element (m) */
316 char smbc_sku[256]; /* SKU number (as a string) */
317 } smbios_chassis_t;
318
319 #define SMB_CHT_OTHER 0x01 /* other */
320 #define SMB_CHT_UNKNOWN 0x02 /* unknown */
321 #define SMB_CHT_DESKTOP 0x03 /* desktop */
322 #define SMB_CHT_LPDESKTOP 0x04 /* low-profile desktop */
323 #define SMB_CHT_PIZZA 0x05 /* pizza box */
324 #define SMB_CHT_MINITOWER 0x06 /* mini-tower */
325 #define SMB_CHT_TOWER 0x07 /* tower */
326 #define SMB_CHT_PORTABLE 0x08 /* portable */
327 #define SMB_CHT_LAPTOP 0x09 /* laptop */
328 #define SMB_CHT_NOTEBOOK 0x0A /* notebook */
329 #define SMB_CHT_HANDHELD 0x0B /* hand-held */
330 #define SMB_CHT_DOCK 0x0C /* docking station */
331 #define SMB_CHT_ALLIN1 0x0D /* all-in-one */
332 #define SMB_CHT_SUBNOTE 0x0E /* sub-notebook */
333 #define SMB_CHT_SPACESAVE 0x0F /* space-saving */
334 #define SMB_CHT_LUNCHBOX 0x10 /* lunchbox */
335 #define SMB_CHT_MAIN 0x11 /* main server chassis */
336 #define SMB_CHT_EXPANSION 0x12 /* expansion chassis */
|