[U-Boot] [PATCH] cmd_boot: cleanup for 'go' command

Wolfgang Denk wd at denx.de
Fri Apr 26 12:48:02 CEST 2013


Dear Kuo-Jung Su,

In message <1366963312-2901-1-git-send-email-dantesu at gmail.com> you wrote:
> From: Kuo-Jung Su <dantesu at faraday-tech.com>
> 
> With MMU/D-Cache enabled, data might be retained at cache
> rather than at DRAM when we execute 'go' command, and some
> of the bare-metal softwares would always invalidate the entire
> data cache at start-up, and causes data lost issue.
> 
> This patch is designed to fixed this issue.
> It has been verified at ARM based systems, and should also work
> at other platforms.

Your patch desription does not match the actual code.

> --- a/common/cmd_boot.c
> +++ b/common/cmd_boot.c
> @@ -50,6 +50,16 @@ static int do_go(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
>  
>  	printf ("## Starting application at 0x%08lX ...\n", addr);
>  
> +#ifdef CONFIG_USE_IRQ
> +	disable_interrupts();
> +#endif

You do not mention in the commit message that you disable interrupts.
This must not be done.  There are many cases where interrupts are
actually needed by the running code.

NAK for this part.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
A Perl script is correct if it's halfway readable and  gets  the  job
done before your boss fires you.
                       - L. Wall & R. L. Schwartz, _Programming Perl_


More information about the U-Boot mailing list