From 123bae9d939235a62e67d0cbfc66f3277bd81844 Mon Sep 17 00:00:00 2001 From: Alex Williamson Date: Tue, 25 Feb 2014 16:00:23 -0700 Subject: [autoboot] Enable infrastructure to specify an autoboot device location iPXE will currently attempt to boot from every network device for which it has a driver. Where a system has more than one network device supported by iPXE, this renders BIOS IPL lists ineffective. Allow an autoboot device location to be specified. If such a location is specified, then only devices matching that location will be used as part of the automatic boot sequence. If no such location is specified, then all devices will be used. Note that this does not affect the "autoboot" command, which will continue to use all devices. Signed-off-by: Alex Williamson Modified-by: Michael Brown Signed-off-by: Michael Brown --- src/include/usr/autoboot.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/include') diff --git a/src/include/usr/autoboot.h b/src/include/usr/autoboot.h index cfa4c41eb..f562b2b12 100644 --- a/src/include/usr/autoboot.h +++ b/src/include/usr/autoboot.h @@ -10,6 +10,7 @@ FILE_LICENCE ( GPL2_OR_LATER ); #include +#include struct net_device; struct uri; struct settings; @@ -25,12 +26,13 @@ enum uriboot_flags { URIBOOT_NO_SAN_BOOT | \ URIBOOT_NO_SAN_UNHOOK ) +extern struct device_description autoboot_device; + extern int uriboot ( struct uri *filename, struct uri *root_path, int drive, unsigned int flags ); extern struct uri * fetch_next_server_and_filename ( struct settings *settings ); extern int netboot ( struct net_device *netdev ); -extern int autoboot ( void ); extern void ipxe ( struct net_device *netdev ); extern int pxe_menu_boot ( struct net_device *netdev ); -- cgit v1.2.3-55-g7522