summary refs log tree commit diff
path: root/arch/mips
diff options
context:
space:
mode:
authorAtsushi Nemoto <anemo@mba.ocn.ne.jp>2008-08-19 22:55:10 +0900
committerRalf Baechle <ralf@linux-mips.org>2008-10-11 16:18:42 +0100
commitc7b95bcb38ea492fd025008ef99501a2b90aa237 (patch)
treea7865927d4745285038903a9e0f5507ccd38846d /arch/mips
parentd10e025f0e4ba4b96d7b5786d232ac5b0b232b11 (diff)
downloadlinux-c7b95bcb38ea492fd025008ef99501a2b90aa237.tar.gz
MIPS: TXx9: Runtime configuration of timeout-error
Add kernel options to control bus timeout error.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips')
-rw-r--r--arch/mips/txx9/generic/setup.c11
-rw-r--r--arch/mips/txx9/generic/setup_tx3927.c5
2 files changed, 11 insertions, 5 deletions
diff --git a/arch/mips/txx9/generic/setup.c b/arch/mips/txx9/generic/setup.c
index fa88aefea9ef..fa45f174b0ee 100644
--- a/arch/mips/txx9/generic/setup.c
+++ b/arch/mips/txx9/generic/setup.c
@@ -68,7 +68,12 @@ unsigned int txx9_master_clock;
 unsigned int txx9_cpu_clock;
 unsigned int txx9_gbus_clock;
 
+#ifdef CONFIG_CPU_TX39XX
+/* don't enable by default - see errata */
+int txx9_ccfg_toeon __initdata;
+#else
 int txx9_ccfg_toeon __initdata = 1;
+#endif
 
 /* Minimum CLK support */
 
@@ -315,6 +320,12 @@ static void __init preprocess_cmdline(void)
 		} else if (strcmp(str, "dcdisable") == 0) {
 			txx9_dc_disable = 1;
 			continue;
+		} else if (strcmp(str, "toeoff") == 0) {
+			txx9_ccfg_toeon = 0;
+			continue;
+		} else if (strcmp(str, "toeon") == 0) {
+			txx9_ccfg_toeon = 1;
+			continue;
 		}
 		if (arcs_cmdline[0])
 			strcat(arcs_cmdline, " ");
diff --git a/arch/mips/txx9/generic/setup_tx3927.c b/arch/mips/txx9/generic/setup_tx3927.c
index 4bc2f859379d..06c492576078 100644
--- a/arch/mips/txx9/generic/setup_tx3927.c
+++ b/arch/mips/txx9/generic/setup_tx3927.c
@@ -32,11 +32,6 @@ void __init tx3927_setup(void)
 	int i;
 	unsigned int conf;
 
-	/* don't enable - see errata */
-	txx9_ccfg_toeon = 0;
-	if (strstr(prom_getcmdline(), "toeon") != NULL)
-		txx9_ccfg_toeon = 1;
-
 	txx9_reg_res_init(TX3927_REV_PCODE(), TX3927_REG_BASE,
 			  TX3927_REG_SIZE);