summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorMichael Brown2011-01-10 04:34:34 +0100
committerMichael Brown2011-01-19 14:52:55 +0100
commite67c79b8560fbe50e1dad23149e8b90dc5358b56 (patch)
treefacd9f3dc2486a31c162ca0446878e4386c024da /src/include
parent[pci] Allow pci_vpd_init() return status to be ignored (diff)
downloadipxe-e67c79b8560fbe50e1dad23149e8b90dc5358b56.tar.gz
ipxe-e67c79b8560fbe50e1dad23149e8b90dc5358b56.tar.xz
ipxe-e67c79b8560fbe50e1dad23149e8b90dc5358b56.zip
[pci] Add ability to resize a VPD field
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include')
-rw-r--r--src/include/ipxe/pcivpd.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/include/ipxe/pcivpd.h b/src/include/ipxe/pcivpd.h
index 469ec29f8..0abf8a956 100644
--- a/src/include/ipxe/pcivpd.h
+++ b/src/include/ipxe/pcivpd.h
@@ -32,6 +32,9 @@ struct pci_vpd_field {
uint8_t len;
} __attribute__ (( packed ));
+/** Maximum PCI VPD field length */
+#define PCI_VPD_MAX_LEN 0xff
+
/** Construct PCI VPD field descriptor
*
* @v tag ISAPnP tag
@@ -172,5 +175,7 @@ extern int pci_vpd_write ( struct pci_vpd *vpd, unsigned int address,
const void *buf, size_t len );
extern int pci_vpd_find ( struct pci_vpd *vpd, unsigned int field,
unsigned int *address, size_t *len );
+extern int pci_vpd_resize ( struct pci_vpd *vpd, unsigned int field,
+ size_t len, unsigned int *address );
#endif /* _IPXE_PCIVPD_H */