Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4e803c40 authored by Santosh Shilimkar's avatar Santosh Shilimkar
Browse files

omap4: l2x0: Override the default l2x0_disable



The machine_kexec() calls outer_disable which can crash on OMAP4
becasue of trustzone restrictions.

This patch overrides the default l2x0_disable with a OMAP4
specific implementation taking care of trustzone

Signed-off-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
Reviewed-by: default avatarTony Lindgren <tony@atomide.com>
Acked-by: default avatarLinus Walleij <linus.walleij@stericsson.com>
parent 2fd86589
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -44,6 +44,13 @@ void __init gic_init_irq(void)
}

#ifdef CONFIG_CACHE_L2X0

static void omap4_l2x0_disable(void)
{
	/* Disable PL310 L2 Cache controller */
	omap_smc1(0x102, 0x0);
}

static int __init omap_l2_cache_init(void)
{
	/*
@@ -66,6 +73,12 @@ static int __init omap_l2_cache_init(void)
	 */
	l2x0_init(l2cache_base, 0x0e050000, 0xc0000fff);

	/*
	 * Override default outer_cache.disable with a OMAP4
	 * specific one
	*/
	outer_cache.disable = omap4_l2x0_disable;

	return 0;
}
early_initcall(omap_l2_cache_init);