MIPS: Move processing of coherency kernel parameters earlier
authorShane McDonald <mcdonald.shane@gmail.com>
Thu, 14 Jun 2012 02:26:40 +0000 (02:26 +0000)
committerJohn Crispin <blogic@openwrt.org>
Fri, 9 Nov 2012 10:37:16 +0000 (11:37 +0100)
Commit 97ce2c88f9ad42e3c60a9beb9fca87abf3639faa (jump-label: initialize
jump-label subsystem much earlier) caused MIPS to break, so this was
resolved with commit 6650df3c380e0db558dbfec63ed860402c6afb2a (MIPS:
Move cache setup to setup_arch().).  Unfortunately, after this commit,
the coherency kernel parameters, cca and coherentio, are no longer
processed before their values are used.

This patch fixes this problem by marking them as early_param, which
results in them being processed before they are needed.

Signed-off-by: Shane McDonald <mcdonald.shane@gmail.com>
Acked-by: David Daney <david.daney@cavium.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Patchwork: http://patchwork.linux-mips.org/patch/3961
Signed-off-by: John Crispin <blogic@openwrt.org>
arch/mips/mm/c-r4k.c

index 4c32ede464b555defb4c2ecfce4441b54cda39a3..1d6fee48d0dd1e3d4c6258d799f123fc9fa96708 100644 (file)
@@ -1348,10 +1348,10 @@ static int __init cca_setup(char *str)
 {
        get_option(&str, &cca);
 
-       return 1;
+       return 0;
 }
 
-__setup("cca=", cca_setup);
+early_param("cca", cca_setup);
 
 static void __cpuinit coherency_setup(void)
 {
@@ -1401,10 +1401,10 @@ static int __init setcoherentio(char *str)
 {
        coherentio = 1;
 
-       return 1;
+       return 0;
 }
 
-__setup("coherentio", setcoherentio);
+early_param("coherentio", setcoherentio);
 #endif
 
 static void __cpuinit r4k_cache_error_setup(void)