[U-Boot] [PATCH 0/8] armv7: cache maintenance operations
Steve Sakoman
sakoman at gmail.com
Thu Dec 23 05:53:41 CET 2010
On Wed, Dec 22, 2010 at 3:54 AM, Aneesh V <aneesh at ti.com> wrote:
> With D-cache and MMU enabled for ARM in u-boot it becomes imperative to
> support a minimal set of cache maintenance operations and necessary
> initializations before enabling MMU.
>
> This series of patches attempt to do the following for armv7:
> * Necessary initialization sequence before enabling MMU that includes
> invalidation of TLB, data caches, branch predictor array etc.
> * Framework for supporting SOC specific outer caches in a generic manner
> (using a structure of function pointers - inspired by the Linux
> implementation)
> * Generic armv7 cache maintenance operations for caches known to the CPU
> * Support for ARM PL310 L2 cache controller used in OMAP4
> * Cleanup of the cleanup_before_linux() function
> * Adapting all armv7 SOCs to use the new framework and removing
> duplicated code
>
> Testing:
> * Extensive testing on OMAP4430SDP and OMAP3430SDP by creating coherency
> issues and solving them using the maintenance routines
> - Eg: memfill a region of memory with a known pattern
> - Invalidate the region
> - Read back and compare the region with the original pattern
> - If match fails it means that invalidate is successful
> - Now add a flush call just before the invalidate
> - If match succeeds it means that flush was successful
> - Outer caches were tested with experiments involving making the
> function pointers NULL
> * Kernel booting on OMAP4430SDP and OMAP3430SDP
I build tested for Beagle, Overo, Panda, and OMAP4430SDP - no issues.
I run tested on Overo and Panda to evaluate the changes on both OMAP3
and OMAP4 - no issues.
Tested-by: Steve Sakoman <steve.sakoman at linaro.org>
Steve
More information about the U-Boot
mailing list