The VPD-R is a readonly area of the PCI Vital Product Data region. There are some standard keywords for serial number, manufacturer, and vendor-specific values. Dell Servers use a vendor-specific tag to store number of ports and port mapping of partitioned NICs. info = VPD-Info string PN = Part Number SN = Serial Number MN = Manufacturer ID Vx = Vendor-specific (x=0..9 A..Z) This creates a sysfs subdirectory in the pci device: vpdattr with 'info', 'EC', 'SN', 'V0', etc. files containing the tag values. Added pci.h patch Signed-off-by: Jordan Hargrave <Jordan_Hargrave@xxxxxxxx> --- include/linux/pci.h | 3 + 1 files changed, 3 insertions(+) diff --git a/include/linux/pci.h b/include/linux/pci.h index 8135a2f..c1313b1 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -372,6 +372,9 @@ struct pci_dev { const struct attribute_group **msi_irq_groups; #endif struct pci_vpd *vpd; + int vpdr_len; + u8 *vpdr_data; + char *vpdi_data; #ifdef CONFIG_PCI_ATS union { struct pci_sriov *sriov; /* SR-IOV capability related */ -- 2.5.0 -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html