On Thu, Jul 04, 2013 at 01:17:07PM -0700, Simon Glass wrote: > A recent bootm fix left the error path incomplete. Reinstate this so that > failures in bootm stages are handled properly. > > Signed-off-by: Simon Glass <s...@chromium.org> > --- > Changes in v2: > - Correct checking in the no-error case > > common/cmd_bootm.c | 6 +----- > 1 file changed, 1 insertion(+), 5 deletions(-) > > diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c > index 02a5013..652513a 100644 > --- a/common/cmd_bootm.c > +++ b/common/cmd_bootm.c > @@ -684,12 +684,8 @@ static int do_bootm_states(cmd_tbl_t *cmdtp, int flag, > int argc, > if (!ret && (states & BOOTM_STATE_OS_GO)) { > ret = boot_selected_os(argc, argv, BOOTM_STATE_OS_GO, > images, boot_fn); > - if (ret) > - goto err; > } > > - return ret; > - > /* Deal with any fallout */ > err: > if (iflag) > @@ -699,7 +695,7 @@ err: > bootstage_error(BOOTSTAGE_ID_DECOMP_UNIMPL); > else if (ret == BOOTM_ERR_RESET) > do_reset(cmdtp, flag, argc, argv); > - else > + else if (ret) > puts("subcommand not supported\n"); > > return ret;
Looking this part over again, BOOTM_STATE_OS_GO handles its own prints when returning 1, so we don't want to do the "subcommand not supported" part here (the other case is a BOOTM_ERR_RESET). But, trace does need to be covered and isn't by the "subcommand not supported" print. I'll make a v3 of this shortly and post. -- Tom
signature.asc
Description: Digital signature
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot