Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / ipxe / src / include / usr / autoboot.h
1 #ifndef _USR_AUTOBOOT_H
2 #define _USR_AUTOBOOT_H
3
4 /** @file
5  *
6  * Automatic booting
7  *
8  */
9
10 FILE_LICENCE ( GPL2_OR_LATER );
11
12 #include <ipxe/device.h>
13
14 struct net_device;
15 struct uri;
16 struct settings;
17
18 /** uriboot() flags */
19 enum uriboot_flags {
20         URIBOOT_NO_SAN_DESCRIBE = 0x0001,
21         URIBOOT_NO_SAN_BOOT = 0x0002,
22         URIBOOT_NO_SAN_UNHOOK = 0x0004,
23 };
24
25 #define URIBOOT_NO_SAN ( URIBOOT_NO_SAN_DESCRIBE | \
26                          URIBOOT_NO_SAN_BOOT |     \
27                          URIBOOT_NO_SAN_UNHOOK )
28
29 extern void set_autoboot_busloc ( unsigned int bus_type,
30                                   unsigned int location );
31 extern void set_autoboot_ll_addr ( const void *ll_addr, size_t len );
32
33 extern int uriboot ( struct uri *filename, struct uri *root_path, int drive,
34                      unsigned int flags );
35 extern struct uri *
36 fetch_next_server_and_filename ( struct settings *settings );
37 extern int netboot ( struct net_device *netdev );
38 extern void ipxe ( struct net_device *netdev );
39
40 extern int pxe_menu_boot ( struct net_device *netdev );
41
42 #endif /* _USR_AUTOBOOT_H */