iPXE
autoboot.h
Go to the documentation of this file.
1#ifndef _USR_AUTOBOOT_H
2#define _USR_AUTOBOOT_H
3
4/** @file
5 *
6 * Automatic booting
7 *
8 */
9
10FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
11FILE_SECBOOT ( PERMITTED );
12
13#include <ipxe/device.h>
14
15struct net_device;
16struct uri;
17struct settings;
18struct san_boot_config;
19
20/** uriboot() flags */
26
27#define URIBOOT_NO_SAN ( URIBOOT_NO_SAN_DESCRIBE | \
28 URIBOOT_NO_SAN_BOOT | \
29 URIBOOT_NO_SAN_UNHOOK )
30
31extern void set_autoboot_busloc ( unsigned int bus_type,
32 unsigned int location );
33extern void set_autoboot_ll_addr ( const void *ll_addr, size_t len,
34 unsigned int vlan );
35
36extern int uriboot ( struct uri *filename, struct uri **root_paths,
37 unsigned int root_path_count, int drive,
38 struct san_boot_config *san_config, unsigned int flags );
39extern struct uri *
41extern int netboot ( struct net_device *netdev );
42extern int ipxe ( struct net_device *netdev );
43
44extern int pxe_menu_boot ( struct net_device *netdev );
45
46#endif /* _USR_AUTOBOOT_H */
int uriboot(struct uri *filename, struct uri **root_paths, unsigned int root_path_count, int drive, struct san_boot_config *san_config, unsigned int flags)
Boot from filename and root-path URIs.
Definition autoboot.c:130
int pxe_menu_boot(struct net_device *netdev)
Boot using PXE boot menu.
Definition pxemenu.c:344
void set_autoboot_ll_addr(const void *ll_addr, size_t len, unsigned int vlan)
Identify autoboot device by link-layer address.
Definition autoboot.c:521
int ipxe(struct net_device *netdev)
Main iPXE flow of execution.
Definition autoboot.c:586
uriboot_flags
uriboot() flags
Definition autoboot.h:21
@ URIBOOT_NO_SAN_BOOT
Definition autoboot.h:23
@ URIBOOT_NO_SAN_DESCRIBE
Definition autoboot.h:22
@ URIBOOT_NO_SAN_UNHOOK
Definition autoboot.h:24
void set_autoboot_busloc(unsigned int bus_type, unsigned int location)
Identify autoboot device by bus type and location.
Definition autoboot.c:491
int netboot(struct net_device *netdev)
Boot from a network device.
Definition autoboot.c:392
struct uri * fetch_next_server_and_filename(struct settings *settings)
Fetch next-server and filename settings into a URI.
Definition autoboot.c:242
Device model.
ring len
Length.
Definition dwmac.h:226
uint8_t flags
Flags.
Definition ena.h:7
static struct net_device * netdev
Definition gdbudp.c:53
uint8_t drive
Drive number.
Definition int13.h:5
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
Definition compiler.h:896
#define FILE_SECBOOT(_status)
Declare a file's UEFI Secure Boot permission status.
Definition compiler.h:926
A network device.
Definition netdevice.h:353
SAN boot configuration parameters.
Definition sanboot.h:111
const char * filename
Boot filename (or NULL to use default)
Definition sanboot.h:113
A settings block.
Definition settings.h:133
A Uniform Resource Identifier.
Definition uri.h:65