]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
ARM: l2c: highbank: remove explicit SMI call in L2 cache initialisation
authorRussell King <rmk+kernel@arm.linux.org.uk>
Mon, 17 Mar 2014 22:42:48 +0000 (22:42 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 29 May 2014 23:49:18 +0000 (00:49 +0100)
Now that highbank uses the write_sec method, we don't need to enable
the L2 cache in SoC specific code; this can be done via the normal
mechanisms in the L2C code.

Checking with Rob Herring:
> > Can we kill the "highbank_smc1(0x102, 0x1);" here? That means
> > l2x0_of_init() will see the L2 cache disabled, and will try to enable
> > it via the write_sec hook, so it should do the right thing.
>
> Yes, that should work. You should be able to just call l2x0_of_init
> unconditionally. The condition was really to just avoid the smc on
> Midway which does get handled on h/w, but not if running virtualized.

So also drop the DT check too.  I'm leaving the config check in place
so that if L2 is disabled, the write_sec hook can be optimised away.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mach-highbank/highbank.c

index 4712aed3d9f606d13e5cd51bb54f3c48ca207455..245e588859ec54d84b64bb61f2a82d4c37269d0f 100644 (file)
@@ -68,9 +68,7 @@ static void __init highbank_init_irq(void)
                highbank_scu_map_io();
 
        /* Enable PL310 L2 Cache controller */
-       if (IS_ENABLED(CONFIG_CACHE_L2X0) &&
-           of_find_compatible_node(NULL, NULL, "arm,pl310-cache")) {
-               highbank_smc1(0x102, 0x1);
+       if (IS_ENABLED(CONFIG_CACHE_L2X0)) {
                outer_cache.write_sec = highbank_l2c310_write_sec;
                l2x0_of_init(0, ~0);
        }