iPXE
undiload.h
Go to the documentation of this file.
1#ifndef _UNDILOAD_H
2#define _UNDILOAD_H
3
4/** @file
5 *
6 * UNDI load/unload
7 *
8 */
9
10FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
11
12struct undi_device;
13struct undi_rom;
14
15extern int undi_load ( struct undi_device *undi, struct undi_rom *undirom );
16extern int undi_unload ( struct undi_device *undi );
17
18/**
19 * Call UNDI loader to create a pixie
20 *
21 * @v undi UNDI device
22 * @v undirom UNDI ROM
23 * @v pci_busdevfn PCI bus:dev.fn
24 * @ret rc Return status code
25 */
26static inline int undi_load_pci ( struct undi_device *undi,
27 struct undi_rom *undirom,
28 unsigned int pci_busdevfn ) {
29 undi->pci_busdevfn = pci_busdevfn;
32 return undi_load ( undi, undirom );
33}
34
35#endif /* _UNDILOAD_H */
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
Definition compiler.h:896
An UNDI device.
Definition undi.h:22
UINT16_t pci_busdevfn
PCI bus:dev.fn, or UNDI_NO_PCI_BUSDEVFN.
Definition undi.h:34
UINT16_t isapnp_csn
ISAPnP card select number, or UNDI_NO_ISAPNP_CSN.
Definition undi.h:36
UINT16_t isapnp_read_port
ISAPnP read port, or UNDI_NO_ISAPNP_READ_PORT.
Definition undi.h:38
An UNDI ROM.
Definition undirom.h:29
#define UNDI_NO_ISAPNP_READ_PORT
ISAPnP read port field is invalid.
Definition undi.h:93
#define UNDI_NO_ISAPNP_CSN
ISAPnP card select number field is invalid.
Definition undi.h:90
int undi_unload(struct undi_device *undi)
Unload a pixie.
Definition undiload.c:161
static int undi_load_pci(struct undi_device *undi, struct undi_rom *undirom, unsigned int pci_busdevfn)
Call UNDI loader to create a pixie.
Definition undiload.h:26
int undi_load(struct undi_device *undi, struct undi_rom *undirom)
Call UNDI loader to create a pixie.
Definition undiload.c:66