Benoît,

On Thu, 4 Oct 2012 22:04:02 +0200 (CEST), Benoît Thébaudeau
<benoit.thebaud...@advansee.com> wrote:

> enable_caches() did not enable icache if CONFIG_SYS_ICACHE_OFF was not defined
> but CONFIG_SYS_DCACHE_OFF was.
> 
> Signed-off-by: Benoît Thébaudeau <benoit.thebaud...@advansee.com>
> Cc: Albert Aribaud <albert.u.b...@aribaud.net>
> ---
> This patch supersedes http://patchwork.ozlabs.org/patch/177263/ .
> 
> Changes for v2:
>  - Move enable_caches() outside of the main #if in order to fix this icache
>    issue rather than doing only #if cosmetic cleanup.
> 
>  .../arch/arm/cpu/arm1136/cpu.c                     |   22 
> +++++++++++---------
>  1 file changed, 12 insertions(+), 10 deletions(-)
> 
> diff --git u-boot-arm-1dfc916.orig/arch/arm/cpu/arm1136/cpu.c 
> u-boot-arm-1dfc916/arch/arm/cpu/arm1136/cpu.c
> index b98e3d9..32a4c24 100644
> --- u-boot-arm-1dfc916.orig/arch/arm/cpu/arm1136/cpu.c
> +++ u-boot-arm-1dfc916/arch/arm/cpu/arm1136/cpu.c
> @@ -141,16 +141,6 @@ void flush_cache(unsigned long start, unsigned long size)
>       flush_dcache_range(start, start + size);
>  }
>  
> -void enable_caches(void)
> -{
> -#ifndef CONFIG_SYS_ICACHE_OFF
> -     icache_enable();
> -#endif
> -#ifndef CONFIG_SYS_DCACHE_OFF
> -     dcache_enable();
> -#endif
> -}
> -
>  #else /* #ifndef CONFIG_SYS_DCACHE_OFF */
>  void invalidate_dcache_all(void)
>  {
> @@ -172,3 +162,15 @@ void flush_cache(unsigned long start, unsigned long size)
>  {
>  }
>  #endif /* #ifndef CONFIG_SYS_DCACHE_OFF */
> +
> +#if !defined(CONFIG_SYS_ICACHE_OFF) || !defined(CONFIG_SYS_DCACHE_OFF)
> +void enable_caches(void)
> +{
> +#ifndef CONFIG_SYS_ICACHE_OFF
> +     icache_enable();
> +#endif
> +#ifndef CONFIG_SYS_DCACHE_OFF
> +     dcache_enable();
> +#endif
> +}
> +#endif
> 

Applied to u-boot-arm/next, thanks!

Amicalement,
-- 
Albert.
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to