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

Tom Rini trini at ti.com
Fri May 10 14:06:47 CEST 2013


On Sun, Apr 28, 2013 at 04:53:08PM -0000, Kuo-Jung Su wrote:

> From: Kuo-Jung Su <dantesu at faraday-tech.com>
> 
> With MMU/D-Cache enabled, data might be retained at d-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 then leads to a data lost issue.
> Furthermore, the U-Boot not only relocates itself but also
> updates symbol table at start-up, which means the i-cache
> might also be dirty, so it would be better to invalidates the
> i-cache alone with d-cache flush.
> 
> This patch is designed to fix the issues above.
> It has been verified at ARM based systems, and should also work
> at other platforms.

This patch has a few not trivially solvable problems.  First, the only
weak version of invalidate_icache_all is in common/cmd_cache.c.  The
only defined version of the function is for ARMv7 CPUs.  So, everyone
that is not ARMv7 and does not have CONFIG_CMD_CACHE will not build now.

And I'm not seeing a globally defined CONFIG to say "Yes, we are ARMv7"
or "Yes, we have icache to invalidate".

This actually seems related to the cache flush issue that Freescale
folks brought up a few weeks ago.  Or maybe that's my pre-coffee brain
talking.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20130510/4e21768f/attachment.pgp>


More information about the U-Boot mailing list