diff options
Diffstat (limited to 'common/cmd_bootm.c')
| -rw-r--r-- | common/cmd_bootm.c | 20 | 
1 files changed, 20 insertions, 0 deletions
| diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c index 20c31a775..a8f85e93b 100644 --- a/common/cmd_bootm.c +++ b/common/cmd_bootm.c @@ -103,13 +103,23 @@ extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);  typedef int boot_os_fn (int flag, int argc, char *argv[],  			bootm_headers_t *images); /* pointers to os/initrd/fdt */ +#define CONFIG_BOOTM_LINUX 1 +#define CONFIG_BOOTM_NETBSD 1 +#define CONFIG_BOOTM_RTEMS 1 + +#ifdef CONFIG_BOOTM_LINUX  extern boot_os_fn do_bootm_linux; +#endif +#ifdef CONFIG_BOOTM_NETBSD  static boot_os_fn do_bootm_netbsd; +#endif  #if defined(CONFIG_LYNXKDI)  static boot_os_fn do_bootm_lynxkdi;  extern void lynxkdi_boot (image_header_t *);  #endif +#ifdef CONFIG_BOOTM_RTEMS  static boot_os_fn do_bootm_rtems; +#endif  #if defined(CONFIG_CMD_ELF)  static boot_os_fn do_bootm_vxworks;  static boot_os_fn do_bootm_qnxelf; @@ -121,12 +131,18 @@ static boot_os_fn do_bootm_integrity;  #endif  boot_os_fn * boot_os[] = { +#ifdef CONFIG_BOOTM_LINUX  	[IH_OS_LINUX] = do_bootm_linux, +#endif +#ifdef CONFIG_BOOTM_NETBSD  	[IH_OS_NETBSD] = do_bootm_netbsd, +#endif  #ifdef CONFIG_LYNXKDI  	[IH_OS_LYNXOS] = do_bootm_lynxkdi,  #endif +#ifdef CONFIG_BOOTM_RTEMS  	[IH_OS_RTEMS] = do_bootm_rtems, +#endif  #if defined(CONFIG_CMD_ELF)  	[IH_OS_VXWORKS] = do_bootm_vxworks,  	[IH_OS_QNX] = do_bootm_qnxelf, @@ -1161,6 +1177,7 @@ static void fixup_silent_linux ()  /* OS booting routines */  /*******************************************************************/ +#ifdef CONFIG_BOOTM_NETBSD  static int do_bootm_netbsd (int flag, int argc, char *argv[],  			    bootm_headers_t *images)  { @@ -1246,6 +1263,7 @@ static int do_bootm_netbsd (int flag, int argc, char *argv[],  	return 1;  } +#endif /* CONFIG_BOOTM_NETBSD*/  #ifdef CONFIG_LYNXKDI  static int do_bootm_lynxkdi (int flag, int argc, char *argv[], @@ -1269,6 +1287,7 @@ static int do_bootm_lynxkdi (int flag, int argc, char *argv[],  }  #endif /* CONFIG_LYNXKDI */ +#ifdef CONFIG_BOOTM_RTEMS  static int do_bootm_rtems (int flag, int argc, char *argv[],  			   bootm_headers_t *images)  { @@ -1299,6 +1318,7 @@ static int do_bootm_rtems (int flag, int argc, char *argv[],  	return 1;  } +#endif /* CONFIG_BOOTM_RTEMS */  #if defined(CONFIG_CMD_ELF)  static int do_bootm_vxworks (int flag, int argc, char *argv[], |