Skip to contentSkip to conversation

omap4: l2x0: Override the default l2x0_disable

PATCH New Santosh Shilimkar 3 participants 4 messages Jul 31, 2010 – Aug 2, 2010

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 2/4 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

---
 arch/arm/mach-omap2/omap4-common.c |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)
arch/arm/mach-omap2/omap4-common.c +13 -0
index 13dc979..b557cc2 100644
@@ -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);
Signature · 1 line
1.6.0.4
#1 lore raw

PATCH 2/4 omap4: l2x0: Override the default l2x0_disable

Quoted 4 lines
arch/arm/mach-omap2/omap4-common.c +0 -0
index 13dc979..b557cc2 100644

<snip>

arch/arm/mach-omap2/omap4-common.c static int __init omap_l2_cache_init(void) · line 79

Quoted 8 lines
arch/arm/mach-omap2/omap4-common.c +4 -0
@@ -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
+	*/

Minor comment - you need a space before the '*'

Quoted 5 lines
arch/arm/mach-omap2/omap4-common.c +2 -0
+	outer_cache.disable = omap4_l2x0_disable;
+
 	return 0;
 }
 early_initcall(omap_l2_cache_init);
maintainer
#2 lore raw

PATCH 2/4 omap4: l2x0: Override the default l2x0_disable

In reply to Santosh Shilimkar
Quoted 5 lines · Santosh Shilimkar

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

Do you need different handling on GP omaps compared to HS omaps?

Tony

Quoted 43 lines
---
 arch/arm/mach-omap2/omap4-common.c |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)
arch/arm/mach-omap2/omap4-common.c +13 -0
index 13dc979..b557cc2 100644
@@ -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);
Signature · 6 lines
1.6.0.4

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
#3 lore raw

PATCH 2/4 omap4: l2x0: Override the default l2x0_disable

Quoted 7 lines

-----Original Message-----
From: Tony Lindgren [mailto:tony at atomide.com]
Sent: Monday, August 02, 2010 6:43 PM
To: Shilimkar, Santosh
Cc: linux-arm-kernel at lists.infradead.org; linux-omap at vger.kernel.org
Subject: Re: [PATCH 2/4] omap4: l2x0: Override the default l2x0_disable

Quoted 9 lines
Quoted 5 lines · Santosh Shilimkar

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

Do you need different handling on GP omaps compared to HS omaps?

No. Same API works for both

Regards,
Santosh