Skip to content

Commit

Permalink
[smbios] Expose board serial number as ${board-serial}
Browse files Browse the repository at this point in the history
With blade servers, the chassis serial number (exposed via ${serial})
may not be unique.  Expose ${board-serial} as a named setting to
provide easy access to a more meaningful serial number.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
  • Loading branch information
dalehamel authored and mcb30 committed Jun 12, 2014
1 parent bb5a4a1 commit 7fe0735
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 0 deletions.
17 changes: 17 additions & 0 deletions src/include/ipxe/smbios.h
Expand Up @@ -116,6 +116,23 @@ struct smbios_system_information {
/** SMBIOS system information structure type */
#define SMBIOS_TYPE_SYSTEM_INFORMATION 1

/** SMBIOS base board information structure */
struct smbios_base_board_information {
/** SMBIOS structure header */
struct smbios_header header;
/** Manufacturer string */
uint8_t manufacturer;
/** Product string */
uint8_t product;
/** Version string */
uint8_t version;
/** Serial number string */
uint8_t serial;
} __attribute__ (( packed ));

/** SMBIOS base board information structure type */
#define SMBIOS_TYPE_BASE_BOARD_INFORMATION 2

/** SMBIOS enclosure information structure */
struct smbios_enclosure_information {
/** SMBIOS structure header */
Expand Down
12 changes: 12 additions & 0 deletions src/interface/smbios/smbios_settings.c
Expand Up @@ -241,3 +241,15 @@ const struct setting asset_setting __setting ( SETTING_HOST_EXTRA, asset ) = {
.type = &setting_type_string,
.scope = &smbios_settings_scope,
};

/** Board serial number setting (may differ from chassis serial number) */
const struct setting board_serial_setting __setting ( SETTING_HOST_EXTRA,
board_serial ) = {
.name = "board-serial",
.description = "Base board serial",
.tag = SMBIOS_STRING_TAG ( SMBIOS_TYPE_BASE_BOARD_INFORMATION,
struct smbios_base_board_information,
serial ),
.type = &setting_type_string,
.scope = &smbios_settings_scope,
};

0 comments on commit 7fe0735

Please sign in to comment.