Add error checking for unsupported OS types.

Signed-off-by: Detlev Zundel <dzu@denx.de>
This commit is contained in:
Detlev Zundel 2009-07-13 16:01:18 +02:00 committed by Wolfgang Denk
parent 982adfc610
commit ca95c9df02

View File

@ -1,5 +1,5 @@
/*
* (C) Copyright 2000-2006
* (C) Copyright 2000-2009
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
*
* See file CREDITS for list of people who contributed to this
@ -548,7 +548,8 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
if (!relocated) {
int i;
for (i = 0; i < ARRAY_SIZE(boot_os); i++)
boot_os[i] += gd->reloc_off;
if (boot_os[i] != NULL)
boot_os[i] += gd->reloc_off;
relocated = 1;
}
@ -636,6 +637,16 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
#endif
boot_fn = boot_os[images.os.os];
if (boot_fn == NULL) {
if (iflag)
enable_interrupts();
printf ("ERROR: booting os '%s' (%d) is not supported\n",
genimg_get_os_name(images.os.os), images.os.os);
show_boot_progress (-8);
return 1;
}
boot_fn(0, argc, argv, &images);
show_boot_progress (-9);