diff options
Diffstat (limited to 'target/linux/lantiq/patches-2.6.39/230-cmdline_hack.patch')
-rw-r--r-- | target/linux/lantiq/patches-2.6.39/230-cmdline_hack.patch | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/target/linux/lantiq/patches-2.6.39/230-cmdline_hack.patch b/target/linux/lantiq/patches-2.6.39/230-cmdline_hack.patch new file mode 100644 index 0000000000..df232869f3 --- /dev/null +++ b/target/linux/lantiq/patches-2.6.39/230-cmdline_hack.patch @@ -0,0 +1,45 @@ +--- a/arch/mips/lantiq/prom.c ++++ b/arch/mips/lantiq/prom.c +@@ -39,6 +39,34 @@ + { + } + ++#ifdef CONFIG_IMAGE_CMDLINE_HACK ++extern char __image_cmdline[]; ++ ++static void __init ++prom_init_image_cmdline(void) ++{ ++ char *p = __image_cmdline; ++ int replace = 0; ++ ++ if (*p == '-') { ++ replace = 1; ++ p++; ++ } ++ ++ if (*p == '\0') ++ return; ++ ++ if (replace) { ++ strlcpy(arcs_cmdline, p, sizeof(arcs_cmdline)); ++ } else { ++ strlcat(arcs_cmdline, " ", sizeof(arcs_cmdline)); ++ strlcat(arcs_cmdline, p, sizeof(arcs_cmdline)); ++ } ++} ++#else ++static void __init prom_init_image_cmdline(void) { return; } ++#endif ++ + static void __init prom_init_cmdline(void) + { + int argc = fw_arg0; +@@ -53,6 +81,7 @@ + strlcat(arcs_cmdline, " ", sizeof(arcs_cmdline)); + } + } ++ prom_init_image_cmdline(); + } + + void __init prom_init(void) |