aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2014-03-19 08:44:41 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2014-05-29 19:48:51 -0400
commit36bccb11a4ac7cc9d190c3062945f1c911a62801 (patch)
tree499ae758e459a3334a96ab82084c9fd15f5208ea
parent4374d64933b1d0f0ebbad064289ef44b869d77c1 (diff)
ARM: l2c: remove platforms/SoCs setting early BRESP
Since we now automatically enable early BRESP in core L2C-310 code when we detect a Cortex-A9, we don't need platforms/SoCs to set this bit explicitly. Instead, they should seek to preserve the value of bit 30 in the auxiliary control register. Acked-by: Tony Lindgren <tony@atomide.com> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r--arch/arm/mach-berlin/berlin.c2
-rw-r--r--arch/arm/mach-exynos/exynos.c4
-rw-r--r--arch/arm/mach-omap2/omap4-common.c3
-rw-r--r--arch/arm/mach-shmobile/board-armadillo800eva-reference.c4
-rw-r--r--arch/arm/mach-shmobile/board-armadillo800eva.c4
-rw-r--r--arch/arm/mach-shmobile/board-kzm9g-reference.c4
-rw-r--r--arch/arm/mach-shmobile/board-kzm9g.c4
-rw-r--r--arch/arm/mach-shmobile/setup-r8a7778.c4
-rw-r--r--arch/arm/mach-shmobile/setup-r8a7779.c4
-rw-r--r--arch/arm/mach-spear/spear13xx.c2
-rw-r--r--arch/arm/mach-tegra/tegra.c4
11 files changed, 19 insertions, 20 deletions
diff --git a/arch/arm/mach-berlin/berlin.c b/arch/arm/mach-berlin/berlin.c
index 025bcb5473eb..6709d2a6bec8 100644
--- a/arch/arm/mach-berlin/berlin.c
+++ b/arch/arm/mach-berlin/berlin.c
@@ -24,7 +24,7 @@ static void __init berlin_init_machine(void)
24 * with DT probing for L2CCs, berlin_init_machine can be removed. 24 * with DT probing for L2CCs, berlin_init_machine can be removed.
25 * Note: 88DE3005 (Armada 1500-mini) uses pl310 l2cc 25 * Note: 88DE3005 (Armada 1500-mini) uses pl310 l2cc
26 */ 26 */
27 l2x0_of_init(0x70c00000, 0xfeffffff); 27 l2x0_of_init(0x30c00000, 0xfeffffff);
28 of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); 28 of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
29} 29}
30 30
diff --git a/arch/arm/mach-exynos/exynos.c b/arch/arm/mach-exynos/exynos.c
index b32a907d021d..e6828fb46034 100644
--- a/arch/arm/mach-exynos/exynos.c
+++ b/arch/arm/mach-exynos/exynos.c
@@ -32,8 +32,8 @@
32#include "mfc.h" 32#include "mfc.h"
33#include "regs-pmu.h" 33#include "regs-pmu.h"
34 34
35#define L2_AUX_VAL 0x7C470001 35#define L2_AUX_VAL 0x3c470001
36#define L2_AUX_MASK 0xC200ffff 36#define L2_AUX_MASK 0xc200ffff
37 37
38static struct map_desc exynos4_iodesc[] __initdata = { 38static struct map_desc exynos4_iodesc[] __initdata = {
39 { 39 {
diff --git a/arch/arm/mach-omap2/omap4-common.c b/arch/arm/mach-omap2/omap4-common.c
index 1dfb806da33e..fb149b03d56d 100644
--- a/arch/arm/mach-omap2/omap4-common.c
+++ b/arch/arm/mach-omap2/omap4-common.c
@@ -204,8 +204,7 @@ static int __init omap_l2_cache_init(void)
204 L2C_AUX_CTRL_WAY_SIZE(3) | 204 L2C_AUX_CTRL_WAY_SIZE(3) |
205 L2C_AUX_CTRL_SHARED_OVERRIDE | 205 L2C_AUX_CTRL_SHARED_OVERRIDE |
206 L310_AUX_CTRL_DATA_PREFETCH | 206 L310_AUX_CTRL_DATA_PREFETCH |
207 L310_AUX_CTRL_INSTR_PREFETCH | 207 L310_AUX_CTRL_INSTR_PREFETCH;
208 L310_AUX_CTRL_EARLY_BRESP;
209 208
210 omap_smc1(0x109, aux_ctrl); 209 omap_smc1(0x109, aux_ctrl);
211 210
diff --git a/arch/arm/mach-shmobile/board-armadillo800eva-reference.c b/arch/arm/mach-shmobile/board-armadillo800eva-reference.c
index 57d1a78367b6..34e7f3c17dd2 100644
--- a/arch/arm/mach-shmobile/board-armadillo800eva-reference.c
+++ b/arch/arm/mach-shmobile/board-armadillo800eva-reference.c
@@ -164,8 +164,8 @@ static void __init eva_init(void)
164 r8a7740_meram_workaround(); 164 r8a7740_meram_workaround();
165 165
166#ifdef CONFIG_CACHE_L2X0 166#ifdef CONFIG_CACHE_L2X0
167 /* Early BRESP enable, Shared attribute override enable, 32K*8way */ 167 /* Shared attribute override enable, 32K*8way */
168 l2x0_init(IOMEM(0xf0002000), 0x40440000, 0x82000fff); 168 l2x0_init(IOMEM(0xf0002000), 0x00440000, 0xc2000fff);
169#endif 169#endif
170 170
171 r8a7740_add_standard_devices_dt(); 171 r8a7740_add_standard_devices_dt();
diff --git a/arch/arm/mach-shmobile/board-armadillo800eva.c b/arch/arm/mach-shmobile/board-armadillo800eva.c
index 486063db2a2f..a01f867227ac 100644
--- a/arch/arm/mach-shmobile/board-armadillo800eva.c
+++ b/arch/arm/mach-shmobile/board-armadillo800eva.c
@@ -1271,8 +1271,8 @@ static void __init eva_init(void)
1271 1271
1272 1272
1273#ifdef CONFIG_CACHE_L2X0 1273#ifdef CONFIG_CACHE_L2X0
1274 /* Early BRESP enable, Shared attribute override enable, 32K*8way */ 1274 /* Shared attribute override enable, 32K*8way */
1275 l2x0_init(IOMEM(0xf0002000), 0x40440000, 0x82000fff); 1275 l2x0_init(IOMEM(0xf0002000), 0x00440000, 0xc2000fff);
1276#endif 1276#endif
1277 1277
1278 i2c_register_board_info(0, i2c0_devices, ARRAY_SIZE(i2c0_devices)); 1278 i2c_register_board_info(0, i2c0_devices, ARRAY_SIZE(i2c0_devices));
diff --git a/arch/arm/mach-shmobile/board-kzm9g-reference.c b/arch/arm/mach-shmobile/board-kzm9g-reference.c
index 598e32488410..85873f186d77 100644
--- a/arch/arm/mach-shmobile/board-kzm9g-reference.c
+++ b/arch/arm/mach-shmobile/board-kzm9g-reference.c
@@ -36,8 +36,8 @@ static void __init kzm_init(void)
36 sh73a0_add_standard_devices_dt(); 36 sh73a0_add_standard_devices_dt();
37 37
38#ifdef CONFIG_CACHE_L2X0 38#ifdef CONFIG_CACHE_L2X0
39 /* Early BRESP enable, Shared attribute override enable, 64K*8way */ 39 /* Shared attribute override enable, 64K*8way */
40 l2x0_init(IOMEM(0xf0100000), 0x40460000, 0x82000fff); 40 l2x0_init(IOMEM(0xf0100000), 0x00460000, 0xc2000fff);
41#endif 41#endif
42} 42}
43 43
diff --git a/arch/arm/mach-shmobile/board-kzm9g.c b/arch/arm/mach-shmobile/board-kzm9g.c
index 03dc3ac84502..ea9bf39fdc10 100644
--- a/arch/arm/mach-shmobile/board-kzm9g.c
+++ b/arch/arm/mach-shmobile/board-kzm9g.c
@@ -876,8 +876,8 @@ static void __init kzm_init(void)
876 gpio_request_one(223, GPIOF_IN, NULL); /* IRQ8 */ 876 gpio_request_one(223, GPIOF_IN, NULL); /* IRQ8 */
877 877
878#ifdef CONFIG_CACHE_L2X0 878#ifdef CONFIG_CACHE_L2X0
879 /* Early BRESP enable, Shared attribute override enable, 64K*8way */ 879 /* Shared attribute override enable, 64K*8way */
880 l2x0_init(IOMEM(0xf0100000), 0x40460000, 0x82000fff); 880 l2x0_init(IOMEM(0xf0100000), 0x00460000, 0xc2000fff);
881#endif 881#endif
882 882
883 i2c_register_board_info(0, i2c0_devices, ARRAY_SIZE(i2c0_devices)); 883 i2c_register_board_info(0, i2c0_devices, ARRAY_SIZE(i2c0_devices));
diff --git a/arch/arm/mach-shmobile/setup-r8a7778.c b/arch/arm/mach-shmobile/setup-r8a7778.c
index 6d694526e4ca..3a8e5316671e 100644
--- a/arch/arm/mach-shmobile/setup-r8a7778.c
+++ b/arch/arm/mach-shmobile/setup-r8a7778.c
@@ -298,10 +298,10 @@ void __init r8a7778_add_dt_devices(void)
298 void __iomem *base = ioremap_nocache(0xf0100000, 0x1000); 298 void __iomem *base = ioremap_nocache(0xf0100000, 0x1000);
299 if (base) { 299 if (base) {
300 /* 300 /*
301 * Early BRESP enable, Shared attribute override enable, 64K*16way 301 * Shared attribute override enable, 64K*16way
302 * don't call iounmap(base) 302 * don't call iounmap(base)
303 */ 303 */
304 l2x0_init(base, 0x40470000, 0x82000fff); 304 l2x0_init(base, 0x00470000, 0xc2000fff);
305 } 305 }
306#endif 306#endif
307 307
diff --git a/arch/arm/mach-shmobile/setup-r8a7779.c b/arch/arm/mach-shmobile/setup-r8a7779.c
index 8e860b36997a..91c90bf0ae83 100644
--- a/arch/arm/mach-shmobile/setup-r8a7779.c
+++ b/arch/arm/mach-shmobile/setup-r8a7779.c
@@ -700,8 +700,8 @@ static struct platform_device *r8a7779_standard_devices[] __initdata = {
700void __init r8a7779_add_standard_devices(void) 700void __init r8a7779_add_standard_devices(void)
701{ 701{
702#ifdef CONFIG_CACHE_L2X0 702#ifdef CONFIG_CACHE_L2X0
703 /* Early BRESP enable, Shared attribute override enable, 64K*16way */ 703 /* Shared attribute override enable, 64K*16way */
704 l2x0_init(IOMEM(0xf0100000), 0x40470000, 0x82000fff); 704 l2x0_init(IOMEM(0xf0100000), 0x00470000, 0xc2000fff);
705#endif 705#endif
706 r8a7779_pm_init(); 706 r8a7779_pm_init();
707 707
diff --git a/arch/arm/mach-spear/spear13xx.c b/arch/arm/mach-spear/spear13xx.c
index 92860fa01668..dcb300443b66 100644
--- a/arch/arm/mach-spear/spear13xx.c
+++ b/arch/arm/mach-spear/spear13xx.c
@@ -46,7 +46,7 @@ void __init spear13xx_l2x0_init(void)
46 */ 46 */
47 writel_relaxed(0x221, VA_L2CC_BASE + L310_TAG_LATENCY_CTRL); 47 writel_relaxed(0x221, VA_L2CC_BASE + L310_TAG_LATENCY_CTRL);
48 writel_relaxed(0x441, VA_L2CC_BASE + L310_DATA_LATENCY_CTRL); 48 writel_relaxed(0x441, VA_L2CC_BASE + L310_DATA_LATENCY_CTRL);
49 l2x0_init(VA_L2CC_BASE, 0x70A60001, 0xfe00ffff); 49 l2x0_init(VA_L2CC_BASE, 0x30a60001, 0xfe00ffff);
50} 50}
51 51
52/* 52/*
diff --git a/arch/arm/mach-tegra/tegra.c b/arch/arm/mach-tegra/tegra.c
index 6191603379e1..ecbb5411a104 100644
--- a/arch/arm/mach-tegra/tegra.c
+++ b/arch/arm/mach-tegra/tegra.c
@@ -89,9 +89,9 @@ static void __init tegra_init_cache(void)
89 89
90 cache_type = readl(p + L2X0_CACHE_TYPE); 90 cache_type = readl(p + L2X0_CACHE_TYPE);
91 aux_ctrl = (cache_type & 0x700) << (17-8); 91 aux_ctrl = (cache_type & 0x700) << (17-8);
92 aux_ctrl |= 0x7C400001; 92 aux_ctrl |= 0x3c400001;
93 93
94 ret = l2x0_of_init(aux_ctrl, 0x8200c3fe); 94 ret = l2x0_of_init(aux_ctrl, 0xc200c3fe);
95 if (!ret) 95 if (!ret)
96 l2x0_saved_regs_addr = virt_to_phys(&l2x0_saved_regs); 96 l2x0_saved_regs_addr = virt_to_phys(&l2x0_saved_regs);
97#endif 97#endif