| #ifndef _USR_AUTOBOOT_H |
| #define _USR_AUTOBOOT_H |
| |
| /** @file |
| * |
| * Automatic booting |
| * |
| */ |
| |
| FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL ); |
| |
| #include <ipxe/device.h> |
| |
| struct net_device; |
| struct uri; |
| struct settings; |
| |
| /** uriboot() flags */ |
| enum uriboot_flags { |
| URIBOOT_NO_SAN_DESCRIBE = 0x0001, |
| URIBOOT_NO_SAN_BOOT = 0x0002, |
| URIBOOT_NO_SAN_UNHOOK = 0x0004, |
| }; |
| |
| #define URIBOOT_NO_SAN ( URIBOOT_NO_SAN_DESCRIBE | \ |
| URIBOOT_NO_SAN_BOOT | \ |
| URIBOOT_NO_SAN_UNHOOK ) |
| |
| extern void set_autoboot_busloc ( unsigned int bus_type, |
| unsigned int location ); |
| extern void set_autoboot_ll_addr ( const void *ll_addr, size_t len, |
| unsigned int vlan ); |
| |
| extern int uriboot ( struct uri *filename, struct uri **root_paths, |
| unsigned int root_path_count, int drive, |
| const char *san_filename, unsigned int flags ); |
| extern struct uri * |
| fetch_next_server_and_filename ( struct settings *settings ); |
| extern int netboot ( struct net_device *netdev ); |
| extern int ipxe ( struct net_device *netdev ); |
| |
| extern int pxe_menu_boot ( struct net_device *netdev ); |
| |
| #endif /* _USR_AUTOBOOT_H */ |