iPXE
nvsvpd.h
Go to the documentation of this file.
00001 #ifndef _IPXE_NVSVPD_H
00002 #define _IPXE_NVSVPD_H
00003 
00004 /**
00005  * @file
00006  *
00007  * Non-Volatile Storage using Vital Product Data
00008  *
00009  */
00010 
00011 FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
00012 
00013 #include <ipxe/nvs.h>
00014 #include <ipxe/pcivpd.h>
00015 
00016 struct nvo_block;
00017 struct refcnt;
00018 
00019 /** An NVS VPD device */
00020 struct nvs_vpd_device {
00021         /** NVS device */
00022         struct nvs_device nvs;
00023         /** PCI VPD device */
00024         struct pci_vpd vpd;
00025 };
00026 
00027 extern int nvs_vpd_init ( struct nvs_vpd_device *nvsvpd,
00028                           struct pci_device *pci );
00029 extern void nvs_vpd_nvo_init ( struct nvs_vpd_device *nvsvpd,
00030                                unsigned int field, struct nvo_block *nvo,
00031                                struct refcnt *refcnt );
00032 
00033 #endif /* IPXE_NVSVPD_H */