iPXE
nvsvpd.h
Go to the documentation of this file.
1#ifndef _IPXE_NVSVPD_H
2#define _IPXE_NVSVPD_H
3
4/**
5 * @file
6 *
7 * Non-Volatile Storage using Vital Product Data
8 *
9 */
10
11FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
12
13#include <ipxe/nvs.h>
14#include <ipxe/pcivpd.h>
15
16struct nvo_block;
17struct refcnt;
18
19/** An NVS VPD device */
21 /** NVS device */
23 /** PCI VPD device */
24 struct pci_vpd vpd;
25};
26
27extern int nvs_vpd_init ( struct nvs_vpd_device *nvsvpd,
28 struct pci_device *pci );
29extern void nvs_vpd_nvo_init ( struct nvs_vpd_device *nvsvpd,
30 unsigned int field, struct nvo_block *nvo,
31 struct refcnt *refcnt );
32
33#endif /* IPXE_NVSVPD_H */
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
Definition compiler.h:896
Non-volatile storage.
void nvs_vpd_nvo_init(struct nvs_vpd_device *nvsvpd, unsigned int field, struct nvo_block *nvo, struct refcnt *refcnt)
Initialise non-volatile option storage within NVS VPD device.
Definition nvsvpd.c:221
int nvs_vpd_init(struct nvs_vpd_device *nvsvpd, struct pci_device *pci)
Initialise NVS VPD device.
Definition nvsvpd.c:179
PCI Vital Product Data.
A block of non-volatile stored options.
Definition nvo.h:23
A non-volatile storage device.
Definition nvs.h:16
An NVS VPD device.
Definition nvsvpd.h:20
struct pci_vpd vpd
PCI VPD device.
Definition nvsvpd.h:24
struct nvs_device nvs
NVS device.
Definition nvsvpd.h:22
A PCI device.
Definition pci.h:211
PCI VPD.
Definition pcivpd.h:130
struct pci_device * pci
PCI device.
Definition pcivpd.h:132
A reference counter.
Definition refcnt.h:27