aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ipq806x/patches-5.4
diff options
context:
space:
mode:
authorRobert Marko <robert.marko@sartura.hr>2020-05-18 12:35:15 +0200
committerJohn Crispin <john@phrozen.org>2020-09-17 08:42:17 +0200
commit43a53891ce8f141e11960bc7b4ad369588ac341d (patch)
treeb00d56748a34b37426f728611b4ed108abe2b4c6 /target/linux/ipq806x/patches-5.4
parent811af0d98adfc3e71cea134491a2255961cceac6 (diff)
downloadupstream-43a53891ce8f141e11960bc7b4ad369588ac341d.tar.gz
upstream-43a53891ce8f141e11960bc7b4ad369588ac341d.tar.bz2
upstream-43a53891ce8f141e11960bc7b4ad369588ac341d.zip
ipq806x: import bootargs-append from IPQ40xx
This imports the patch that adds bootargs-append support from IPQ40xx. This way we can append additional boot arguments from DTS instead of only being able to overwrite them. This way dual firmware devices can use the rootfs number that bootloader passes to decide from what to boot. But we still need to append console info and ubi root info. This is used by Edgecore ECW5410. Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Diffstat (limited to 'target/linux/ipq806x/patches-5.4')
-rw-r--r--target/linux/ipq806x/patches-5.4/997-device_tree_cmdline.patch14
1 files changed, 14 insertions, 0 deletions
diff --git a/target/linux/ipq806x/patches-5.4/997-device_tree_cmdline.patch b/target/linux/ipq806x/patches-5.4/997-device_tree_cmdline.patch
new file mode 100644
index 0000000000..92f82b3788
--- /dev/null
+++ b/target/linux/ipq806x/patches-5.4/997-device_tree_cmdline.patch
@@ -0,0 +1,14 @@
+Index: linux-5.4.65/drivers/of/fdt.c
+===================================================================
+--- linux-5.4.65.orig/drivers/of/fdt.c
++++ linux-5.4.65/drivers/of/fdt.c
+@@ -1059,6 +1059,9 @@ int __init early_init_dt_scan_chosen(uns
+ p = of_get_flat_dt_prop(node, "bootargs", &l);
+ if (p != NULL && l > 0)
+ strlcpy(data, p, min(l, COMMAND_LINE_SIZE));
++ p = of_get_flat_dt_prop(node, "bootargs-append", &l);
++ if (p != NULL && l > 0)
++ strlcat(data, p, min_t(int, strlen(data) + (int)l, COMMAND_LINE_SIZE));
+
+ /*
+ * CONFIG_CMDLINE is meant to be a default in case nothing else