summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-kirkwood/common.c
diff options
context:
space:
mode:
authorRafael J. Wysocki <rjw@sisk.pl>2009-12-06 16:06:11 +0100
committerRafael J. Wysocki <rjw@sisk.pl>2009-12-06 16:06:11 +0100
commit64357ed468025614d48daa6cc87674ae5616f8fb (patch)
tree2467c239364d7602755b73203025d329c6f84b22 /arch/arm/mach-kirkwood/common.c
parentPM / freezer: Don't get over-anxious while waiting (diff)
parentMerge branch 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kern... (diff)
downloadlinux-64357ed468025614d48daa6cc87674ae5616f8fb.tar.xz
linux-64357ed468025614d48daa6cc87674ae5616f8fb.zip
Merge branch 'master' into for-linus
Diffstat (limited to 'arch/arm/mach-kirkwood/common.c')
-rw-r--r--arch/arm/mach-kirkwood/common.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/arch/arm/mach-kirkwood/common.c b/arch/arm/mach-kirkwood/common.c
index 0acb61f3c10b..242dd0775343 100644
--- a/arch/arm/mach-kirkwood/common.c
+++ b/arch/arm/mach-kirkwood/common.c
@@ -845,7 +845,7 @@ int __init kirkwood_find_tclk(void)
return 166666667;
}
-static void kirkwood_timer_init(void)
+static void __init kirkwood_timer_init(void)
{
kirkwood_tclk = kirkwood_find_tclk();
orion_time_init(IRQ_KIRKWOOD_BRIDGE, kirkwood_tclk);
@@ -915,6 +915,14 @@ void __init kirkwood_init(void)
kirkwood_uart0_data[0].uartclk = kirkwood_tclk;
kirkwood_uart1_data[0].uartclk = kirkwood_tclk;
+ /*
+ * Disable propagation of mbus errors to the CPU local bus,
+ * as this causes mbus errors (which can occur for example
+ * for PCI aborts) to throw CPU aborts, which we're not set
+ * up to deal with.
+ */
+ writel(readl(CPU_CONFIG) & ~CPU_CONFIG_ERROR_PROP, CPU_CONFIG);
+
kirkwood_setup_cpu_mbus();
#ifdef CONFIG_CACHE_FEROCEON_L2