iPXE
undirom.h
Go to the documentation of this file.
1 #ifndef _UNDIROM_H
2 #define _UNDIROM_H
3 
4 /** @file
5  *
6  * UNDI expansion ROMs
7  *
8  */
9 
10 FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
11 
12 #include <pxe_types.h>
13 
14 /** An UNDI PCI device ID */
16  /** PCI vendor ID */
17  unsigned int vendor_id;
18  /** PCI device ID */
19  unsigned int device_id;
20 };
21 
22 /** An UNDI device ID */
24  /** PCI device ID */
26 };
27 
28 /** An UNDI ROM */
29 struct undi_rom {
30  /** List of UNDI ROMs */
31  struct list_head list;
32  /** ROM segment address */
33  unsigned int rom_segment;
34  /** UNDI loader entry point */
35  SEGOFF16_t loader_entry;
36  /** Code segment size */
37  size_t code_size;
38  /** Data segment size */
39  size_t data_size;
40  /** Bus type
41  *
42  * Values are as used by @c PXENV_UNDI_GET_NIC_TYPE
43  */
44  unsigned int bus_type;
45  /** Device ID */
47 };
48 
49 extern struct undi_rom * undirom_find_pci ( unsigned int vendor_id,
50  unsigned int device_id,
51  unsigned int rombase );
52 
53 #endif /* _UNDIROM_H */
unsigned int rom_segment
ROM segment address.
Definition: undirom.h:33
size_t code_size
Code segment size.
Definition: undirom.h:37
uint16_t device_id
Definition: ib_mad.h:19
size_t data_size
Data segment size.
Definition: undirom.h:39
An UNDI PCI device ID.
Definition: undirom.h:15
An UNDI ROM.
Definition: undirom.h:29
A doubly-linked list entry (or list head)
Definition: list.h:18
unsigned int bus_type
Bus type.
Definition: undirom.h:44
uint8_t vendor_id[3]
Definition: ib_mad.h:22
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
unsigned int vendor_id
PCI vendor ID.
Definition: undirom.h:17
SEGOFF16_t loader_entry
UNDI loader entry point.
Definition: undirom.h:35
struct undi_rom * undirom_find_pci(unsigned int vendor_id, unsigned int device_id, unsigned int rombase)
Find UNDI ROM for PCI device.
Definition: undirom.c:211
struct list_head list
List of UNDI ROMs.
Definition: undirom.h:31
union undi_device_id bus_id
Device ID.
Definition: undirom.h:46
unsigned int device_id
PCI device ID.
Definition: undirom.h:19
An UNDI device ID.
Definition: undirom.h:23
PXE data types.
struct undi_pci_device_id pci
PCI device ID.
Definition: undirom.h:25