diff options
Diffstat (limited to 'common')
| -rw-r--r-- | common/cmd_bootm.c | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c index e712602b8..21ab6428a 100644 --- a/common/cmd_bootm.c +++ b/common/cmd_bootm.c @@ -605,7 +605,7 @@ static int do_bootm_states(cmd_tbl_t *cmdtp, int flag, int argc,  {  	boot_os_fn *boot_fn;  	ulong iflag = 0; -	int ret = 0; +	int ret = 0, need_boot_fn;  	images->state |= states; @@ -665,7 +665,10 @@ static int do_bootm_states(cmd_tbl_t *cmdtp, int flag, int argc,  	if (ret)  		return ret;  	boot_fn = boot_os[images->os.os]; -	if (boot_fn == NULL) { +	need_boot_fn = states & (BOOTM_STATE_OS_CMDLINE | +			BOOTM_STATE_OS_BD_T | BOOTM_STATE_OS_PREP | +			BOOTM_STATE_OS_FAKE_GO | BOOTM_STATE_OS_GO); +	if (boot_fn == NULL && need_boot_fn) {  		if (iflag)  			enable_interrupts();  		printf("ERROR: booting os '%s' (%d) is not supported\n", |