summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-kirkwood
diff options
context:
space:
mode:
authorSaeed Bishara <saeed@marvell.com>2008-06-23 14:05:08 +0200
committerNicolas Pitre <nico@cam.org>2008-06-30 20:25:24 +0200
commit1338760329c586e0141831099e15f5c336dd9c1d (patch)
treecf7b223ee87d0686118ac8b6a3214656aa69279a /arch/arm/mach-kirkwood
parent[ARM] Orion: fix for tsx09-common.c compilation problem (diff)
downloadlinux-1338760329c586e0141831099e15f5c336dd9c1d.tar.xz
linux-1338760329c586e0141831099e15f5c336dd9c1d.zip
[ARM] Kirkwood: support L2 writeback mode
This patch allows booting Kirkwood with the L2 in writeback mode, by reading the WT override bit from the L2 config register and passing that into the Feroceon L2 init routine, instead of assuming that the WT override bit will always be set Signed-off-by: Saeed Bishara <saeed@marvell.com> Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Diffstat (limited to 'arch/arm/mach-kirkwood')
-rw-r--r--arch/arm/mach-kirkwood/common.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/arm/mach-kirkwood/common.c b/arch/arm/mach-kirkwood/common.c
index e73384fbbba8..5938a3b33cdc 100644
--- a/arch/arm/mach-kirkwood/common.c
+++ b/arch/arm/mach-kirkwood/common.c
@@ -313,6 +313,11 @@ static char * __init kirkwood_id(void)
return "unknown 88F6000 variant";
}
+static int __init is_l2_writethrough(void)
+{
+ return !!(readl(L2_CONFIG_REG) & L2_WRITETHROUGH);
+}
+
void __init kirkwood_init(void)
{
printk(KERN_INFO "Kirkwood: %s, TCLK=%d.\n",
@@ -321,6 +326,6 @@ void __init kirkwood_init(void)
kirkwood_setup_cpu_mbus();
#ifdef CONFIG_CACHE_FEROCEON_L2
- feroceon_l2_init(1);
+ feroceon_l2_init(is_l2_writethrough());
#endif
}