mirror of https://github.com/hak5/openwrt.git
60 lines
1.3 KiB
Diff
60 lines
1.3 KiB
Diff
--- a/arch/mips/kernel/setup.c
|
|
+++ b/arch/mips/kernel/setup.c
|
|
@@ -546,8 +546,28 @@ static void __init resource_init(void)
|
|
}
|
|
}
|
|
|
|
+#ifdef CONFIG_IMAGE_CMDLINE_HACK
|
|
+static void __init process__image_cmdline(void)
|
|
+{
|
|
+ extern char __image_cmdline[];
|
|
+
|
|
+ if (__image_cmdline[0] == '\0')
|
|
+ return;
|
|
+
|
|
+ if (__image_cmdline[0] == '-') {
|
|
+ strlcpy(arcs_cmdline, __image_cmdline, sizeof(arcs_cmdline));
|
|
+ } else {
|
|
+ strlcat(arcs_cmdline, " ", sizeof(arcs_cmdline));
|
|
+ strlcat(arcs_cmdline, __image_cmdline, sizeof(arcs_cmdline));
|
|
+ }
|
|
+}
|
|
+#else
|
|
+static void inline process__image_cmdline(void) {}
|
|
+#endif
|
|
+
|
|
void __init setup_arch(char **cmdline_p)
|
|
{
|
|
+ process__image_cmdline();
|
|
cpu_probe();
|
|
prom_init();
|
|
|
|
--- a/arch/mips/Kconfig
|
|
+++ b/arch/mips/Kconfig
|
|
@@ -806,6 +806,10 @@ config SYNC_R4K
|
|
config MIPS_MACHINE
|
|
def_bool n
|
|
|
|
+config IMAGE_CMDLINE_HACK
|
|
+ bool "OpenWrt specific image command line hack"
|
|
+ default n
|
|
+
|
|
config NO_IOPORT
|
|
def_bool n
|
|
|
|
--- a/arch/mips/kernel/head.S
|
|
+++ b/arch/mips/kernel/head.S
|
|
@@ -143,6 +143,12 @@ FEXPORT(__kernel_entry)
|
|
j kernel_entry
|
|
#endif
|
|
|
|
+#ifdef CONFIG_IMAGE_CMDLINE_HACK
|
|
+ .ascii "CMDLINE:"
|
|
+EXPORT(__image_cmdline)
|
|
+ .fill 0x400
|
|
+#endif /* CONFIG_IMAGE_CMDLINE_HACK */
|
|
+
|
|
__REF
|
|
|
|
NESTED(kernel_entry, 16, sp) # kernel entry point
|