New field: PCI Segment Number. Signed-off-by: Jerry Hoemann <jerry.hoem...@hpe.com> --- dmioem.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/dmioem.c b/dmioem.c index 2f1f9f6..144bf3f 100644 --- a/dmioem.c +++ b/dmioem.c @@ -1346,14 +1346,20 @@ static int dmi_decode_hp(const struct dmi_header *h) * 0x0C | Parent Hub | BYTE | Instance number of internal Hub * 0x0D | Port Speed | BYTE | Enumerated value of speed configured by BIOS * 0x0E | Device Path| STRING| UEFI Device Path of USB endpoint + * 0x0F | PCI Seg | WORD | PCI Segment number of the USB controller */ if (gen < G9) return 0; pr_handle_name("%s Proliant USB Port Connector Correlation Record", company); if (h->length < 0x0F) break; if (!(opt.flags & FLAG_QUIET)) pr_attr("Associated Handle", "0x%04X", WORD(data + 0x4)); - pr_attr("PCI Device", "%02x:%02x.%x", data[0x6], - data[0x7] >> 3, data[0x7] & 0x7); + if (h->length < 0x11) + pr_attr("PCI Device", "%02x:%02x.%x", data[0x6], + data[0x7] >> 3, data[0x7] & 0x7); + else + pr_attr("PCI Device", "%04x:%02x:%02x.%x", + WORD(data + 0xF), data[0x6], + data[0x7] >> 3, data[0x7] & 0x7); dmi_hp_238_loc("Location", data[0x8]); dmi_hp_238_flags("Management Port", WORD(data + 0x9)); pr_attr("Port Instance", "%d", data[0xB]); -- 2.44.0