|
@@ -0,0 +1,43 @@
|
|
|
|
+From: Gabor Juhos <[email protected]>
|
|
|
|
+Date: Sat, 2 Dec 2017 19:15:29 +0100
|
|
|
|
+Subject: [PATCH] MIPS: ath79: fix board detection with newer RouterBOOT versions
|
|
|
|
+
|
|
|
|
+Recent RouterBOOT version (at least version 3.41 on RB911G-5HPacD)
|
|
|
|
+use "Board=" kernel parameter instead of "board=" to pass the board
|
|
|
|
+name to the kernel. Due to this change the board detection code is
|
|
|
|
+not working on the devices shipped with the new RouterBOOT version.
|
|
|
|
+Because the kernel is unable to identify these boards they become
|
|
|
|
+unusable despite that they are supported by the current code.
|
|
|
|
+
|
|
|
|
+Update the prom_init code to convert the 'Board' kernel parameter to
|
|
|
|
+'board'. After this change, the board detection works also with the
|
|
|
|
+new RouterBOOT versions.
|
|
|
|
+
|
|
|
|
+Signed-off-by: Gabor Juhos <[email protected]>
|
|
|
|
+---
|
|
|
|
+--- a/arch/mips/ath79/prom.c
|
|
|
|
++++ b/arch/mips/ath79/prom.c
|
|
|
|
+@@ -104,6 +104,7 @@ static int __init ath79_prom_init_myload
|
|
|
|
+ void __init prom_init(void)
|
|
|
|
+ {
|
|
|
|
+ const char *env;
|
|
|
|
++ char *c;
|
|
|
|
+
|
|
|
|
+ if (ath79_prom_init_myloader())
|
|
|
|
+ return;
|
|
|
|
+@@ -137,6 +138,15 @@ void __init prom_init(void)
|
|
|
|
+ }
|
|
|
|
+ #endif
|
|
|
|
+
|
|
|
|
++ /*
|
|
|
|
++ * RouterBOOT uses "Board" kernel parameter instead of "board" since
|
|
|
|
++ * version 3.41 (or so). Replace the first character of the parameter
|
|
|
|
++ * to keep board detection working.
|
|
|
|
++ */
|
|
|
|
++ c = strstr(arcs_cmdline, "Board=");
|
|
|
|
++ if (c)
|
|
|
|
++ c[0] = 'b';
|
|
|
|
++
|
|
|
|
+ if (strstr(arcs_cmdline, "board=750Gr3") ||
|
|
|
|
+ strstr(arcs_cmdline, "board=750i") ||
|
|
|
|
+ strstr(arcs_cmdline, "board=750-hb") ||
|