dmi_lenovo_mtm

Synopsis

#include <opendmi/entity/lenovo/records.h>

typedef struct dmi_lenovo_mtm {
    const char *brand;
    const char *mtm;
    dmi_binary_t data;
} dmi_lenovo_mtm_t;

Description

The dmi_lenovo_mtm_t structure holds the decoded Lenovo machine type model (type 200) of a consumer or small business laptop of Lenovo, e.g. an IdeaPad, a Yoga, a Legion or a ThinkBook, which tells its brand, IdeaPad for all of them, and its full machine type model, e.g. 20VE00U9RU, of which the system information (type 1) holds only the machine type, e.g. 20VE.

The structure is returned by dmi_entity_info for the structures decoded by dmi_lenovo_mtm_spec, of type DMI_TYPE(lenovo_mtm), declared in <opendmi/module/lenovo.h>, once the Lenovo extension module (dmi_lenovo_module) is enabled, which is done for IBM and Lenovo platforms. It lives as long as the context it has been decoded in.

The layout is reverse engineered from the dumps of the data corpus, since no public source describes the structure, and the members whose meaning is not established are named after their position. The structures are 16 bytes long. ThinkPads carry structures of 7 bytes at the same type, which refer to three strings and whose meaning is not known, and which are left undecoded.

Fields

brand

Brand, e.g. IdeaPad, which ThinkBooks hold too.

mtm

Machine type model.

data

Bytes past the strings, whose meaning is not established.

Standards

Not part of the SMBIOS specification. Defined by Lenovo firmware, and reverse engineered from the data corpus.