dmi_dell_device_bay
Synopsis
#include <opendmi/entity/dell/device-bay.h>
typedef struct dmi_dell_device_bay {
uint8_t unknown_1;
const char *name;
const char *supported_devices;
const char *installed_device;
uint8_t unknown_2;
const char *unknown_string_1;
const char *unknown_string_2;
bool has_unknown_strings;
} dmi_dell_device_bay_t;
Description
The dmi_dell_device_bay_t structure holds the decoded Dell device bay
(type 219), which describes a bay of a laptop or of its docking station that
takes one of several devices, e.g. an optical drive or a second battery. The
structures are found on Latitude laptops, e.g. Latitude D500, D610 and E6230,
and newer systems which have no bay carry one of blank strings, e.g.
Precision M3800 and G15 5515.
The structure is returned by dmi_entity_info for the structures decoded
by dmi_dell_device_bay_spec, of type DMI_TYPE(dell_device_bay), declared
in <opendmi/module/dell.h>, once the Dell extension module
(dmi_dell_module) is enabled. It lives as long as the context it has been
decoded in.
Some Dell platforms give type 219 to the Intel Management Engine interface
information, see dmi_intel_mei, which is told by its signature, and the
specification decodes the other structures of the type.
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.
Fields
unknown_1-
Value whose meaning is not established,
3on the systems which have a bay, and0or2on the ones which have none. name-
Name of the bay, e.g.
System Device BayorDock DBay. supported_devices-
Devices the bay takes, separated by commas, e.g.
Floppy, Battery, CD-ROM, CD-RW, Hard Disk, DVD. installed_device-
Device the bay holds, e.g.
Battery, orEMPTYfor none, padded with spaces by the firmware. unknown_2-
Value whose meaning is not established,
0xFFin most known data, and0on Precision M3800. unknown_string_1,unknown_string_2-
Strings whose meaning is not established, which the structures of 11 bytes refer to, e.g. blank ones on Precision M3800 or
00hon G15 5515. Not shown whenhas_unknown_stringsis not set. has_unknown_strings-
Whether the structure refers to
unknown_string_1andunknown_string_2, which the structures of 9 bytes leave out.