The issue addressed by this workaround is fixed in ES1.1.

Signed-off-by: Mans Rullgard <mans.rullg...@linaro.org>
---
 arch/arm/mach-omap2/omap4-common.c |   12 ++----------
 1 files changed, 2 insertions(+), 10 deletions(-)

diff --git a/arch/arm/mach-omap2/omap4-common.c 
b/arch/arm/mach-omap2/omap4-common.c
index 5df70fb..e0120d5 100644
--- a/arch/arm/mach-omap2/omap4-common.c
+++ b/arch/arm/mach-omap2/omap4-common.c
@@ -190,25 +190,17 @@ static int __init omap_l2_cache_init(void)
                omap_smc1(0x113, por_ctrl);
        }
 
-       if (cpu_is_omap446x()) {
-               writel_relaxed(0xa5a5, l2cache_base + 0x900);
-               writel_relaxed(0xa5a5, l2cache_base + 0x908);
-               writel_relaxed(0xa5a5, l2cache_base + 0x904);
-               writel_relaxed(0xa5a5, l2cache_base + 0x90C);
-       }
-
        /*
-        * FIXME: Temporary WA for OMAP4460 stability issue.
+        * Workaround for OMAP4460 ES1.0 stability issue.
         * Lock-down specific L2 cache ways which  makes effective
         * L2 size as 512 KB instead of 1 MB
         */
-       if (cpu_is_omap446x()) {
+       if (omap_rev() == OMAP4460_REV_ES1_0) {
                lockdown = 0xa5a5;
                writel_relaxed(lockdown, l2cache_base + L2X0_LOCKDOWN_WAY_D0);
                writel_relaxed(lockdown, l2cache_base + L2X0_LOCKDOWN_WAY_D1);
                writel_relaxed(lockdown, l2cache_base + L2X0_LOCKDOWN_WAY_I0);
                writel_relaxed(lockdown, l2cache_base + L2X0_LOCKDOWN_WAY_I1);
-               goto skip_aux_por_api;
        }
 
 skip_aux_por_api:
-- 
1.7.7.4


_______________________________________________
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev

Reply via email to