Hi Jerry, On Wed, 15 May 2024 09:49:31 -0600, Jerry Hoemann wrote: > 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]);
Applied, thanks. Note that I don't have access to any system implementing this field, so if you can get you hands on one and provide a dump of its DMI table for my collection, that would be appreciated. -- Jean Delvare SUSE L3 Support