mirror of
https://github.com/ipxe/ipxe
synced 2025-12-22 21:11:03 +03:00
[sanboot] Add "sanhook" and "sanunhook" commands
Expose the multiple-SAN-drive capability of the iPXE core via the iPXE command line by adding commands to hook and unhook additional drives. Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
@@ -15,4 +15,9 @@ FILE_LICENCE ( GPL2_OR_LATER );
|
||||
#define SANBOOT_PREFIX_null __null_
|
||||
#endif
|
||||
|
||||
static inline __always_inline unsigned int
|
||||
SANBOOT_INLINE ( null, san_default_drive ) ( void ) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
#endif /* _IPXE_NULL_SANBOOT_H */
|
||||
|
||||
@@ -58,12 +58,19 @@ struct uri;
|
||||
/* Include all architecture-dependent sanboot API headers */
|
||||
#include <bits/sanboot.h>
|
||||
|
||||
/**
|
||||
* Get default SAN drive number
|
||||
*
|
||||
* @ret drive Default drive number
|
||||
*/
|
||||
unsigned int san_default_drive ( void );
|
||||
|
||||
/**
|
||||
* Hook SAN device
|
||||
*
|
||||
* @v uri URI
|
||||
* @v drive Requested drive number
|
||||
* @ret drive Assigned drive number, or negative error
|
||||
* @v drive Drive number
|
||||
* @ret rc Return status code
|
||||
*/
|
||||
int san_hook ( struct uri *uri, unsigned int drive );
|
||||
|
||||
|
||||
@@ -14,7 +14,19 @@ struct net_device;
|
||||
struct uri;
|
||||
struct settings;
|
||||
|
||||
extern int uriboot ( struct uri *filename, struct uri *root_path );
|
||||
/** 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 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 );
|
||||
|
||||
Reference in New Issue
Block a user