[patch 2/2] arm: Implement l2x0 cache disable function
srinidhi
srinidhi.kasagar at stericsson.com
Fri Jul 2 07:23:21 EDT 2010
> ---------- Forwarded message ----------
> From: Thomas Gleixner <tglx at linutronix.de>
> Date: Thu, Jul 1, 2010 at 9:35 PM
> Subject: [patch 2/2] arm: Implement l2x0 cache disable function
> To: LAK <linux-arm-kernel at lists.infradead.org>
> Cc: Catalin Marinas <catalin.marinas at arm.com>
>
>
> This function is called from kexec code before the inner caches are
> disabled to prevent random crashes in the new kernel.
>
> Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
> Index: linux-2.6/arch/arm/mm/cache-l2x0.c
> ===================================================================
> --- linux-2.6.orig/arch/arm/mm/cache-l2x0.c
> +++ linux-2.6/arch/arm/mm/cache-l2x0.c
> @@ -206,6 +206,12 @@ static void l2x0_flush_range(unsigned lo
> spin_unlock_irqrestore(&l2x0_lock, flags);
> }
>
> +static void l2x0_cache_disable(void)
> +{
> + l2x0_inv_all();
> + writel(0, l2x0_base + L2X0_CTRL);
> +}
I think it's a problem for PL310 controller where the access to
L2X0_CTRL is secure, accessing this in non-secure mode will fault.
Srinidhi
More information about the linux-arm-kernel
mailing list