diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2014-03-16 13:53:23 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2014-05-29 19:49:17 -0400 |
commit | 0074fb2c9e75acfdea391e6962c4be98444b4792 (patch) | |
tree | 070c31a11931b3c927be81efad0e775c1acedfd2 /arch/arm/mach-highbank | |
parent | 15b0bc4041baf0444e4ddd969849bb1d91703f59 (diff) |
ARM: l2c: highbank: implement new write_sec method
With the write_sec method, we no longer need to override the default L2C
disable method. This can be handled via the write_sec method instead.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-highbank')
-rw-r--r-- | arch/arm/mach-highbank/highbank.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/arch/arm/mach-highbank/highbank.c b/arch/arm/mach-highbank/highbank.c index 38e1dc3b4c6e..4712aed3d9f6 100644 --- a/arch/arm/mach-highbank/highbank.c +++ b/arch/arm/mach-highbank/highbank.c | |||
@@ -51,11 +51,13 @@ static void __init highbank_scu_map_io(void) | |||
51 | } | 51 | } |
52 | 52 | ||
53 | 53 | ||
54 | static void highbank_l2x0_disable(void) | 54 | static void highbank_l2c310_write_sec(unsigned long val, unsigned reg) |
55 | { | 55 | { |
56 | outer_flush_all(); | 56 | if (reg == L2X0_CTRL) |
57 | /* Disable PL310 L2 Cache controller */ | 57 | highbank_smc1(0x102, val); |
58 | highbank_smc1(0x102, 0x0); | 58 | else |
59 | WARN_ONCE(1, "Highbank L2C310: ignoring write to reg 0x%x\n", | ||
60 | reg); | ||
59 | } | 61 | } |
60 | 62 | ||
61 | static void __init highbank_init_irq(void) | 63 | static void __init highbank_init_irq(void) |
@@ -69,8 +71,8 @@ static void __init highbank_init_irq(void) | |||
69 | if (IS_ENABLED(CONFIG_CACHE_L2X0) && | 71 | if (IS_ENABLED(CONFIG_CACHE_L2X0) && |
70 | of_find_compatible_node(NULL, NULL, "arm,pl310-cache")) { | 72 | of_find_compatible_node(NULL, NULL, "arm,pl310-cache")) { |
71 | highbank_smc1(0x102, 0x1); | 73 | highbank_smc1(0x102, 0x1); |
74 | outer_cache.write_sec = highbank_l2c310_write_sec; | ||
72 | l2x0_of_init(0, ~0); | 75 | l2x0_of_init(0, ~0); |
73 | outer_cache.disable = highbank_l2x0_disable; | ||
74 | } | 76 | } |
75 | } | 77 | } |
76 | 78 | ||