OEM Type 193: Other ROM Info. Signed-off-by: Jerry Hoemann <jerry.hoem...@hpe.com> --- dmioem.c | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+)
diff --git a/dmioem.c b/dmioem.c index ffbcd95..d4d83e2 100644 --- a/dmioem.c +++ b/dmioem.c @@ -1001,6 +1001,37 @@ static int dmi_decode_hp(const struct dmi_header *h) switch (h->type) { + case 193: + /* + * Vendor Specific: Other ROM Info + * + * Offset | Name | Width | Description + * ------------------------------------- + * 0x00 | Type | BYTE | 0xC1, ROM Structure Indicator + * 0x01 | Length | BYTE | Length of structure + * 0x02 | Handle | WORD | Unique handle + * 0x04 | ROM | BYTE | 01: Redundant ROM installed + * 0x05 | ROM vers | STRING| Version of the Redundant ROM + * 0x06 | Reserved | BYTE | Reserved in Gen9 forward + * 0x07 | OEM ROM | STRING| If not blank, OEM ROM binary file name + * 0x08 | OEM Date | STRING| If not blank, OEM ROM binary build date + */ + if (gen < G9) return 0; + pr_handle_name("%s ProLiant Other ROM Info", company); + if (h->length < 0x09) break; + if ((gen < G12) && (data[0x04] & 0x01)) + pr_attr("Redundant ROM Version", "%s", dmi_string(h, data[0x05])); + if (data[0x07]) + { + const char *str = dmi_string(h, data[0x07]); + if (strncmp(str, " ", 2)) + { + pr_attr("OEM ROM Binary Filename", "%s", str); + pr_attr("OEM ROM Binary Build Date", "%s", dmi_string(h, data[0x08])); + } + } + break; + case 194: /* * Vendor Specific: Super IO Enable/Disable Features -- 2.47.1