From a3ae21c495531518a4cecbae9f89016fa56191e7 Mon Sep 17 00:00:00 2001
From: Unknown <unknown@openwrt.org>
Date: Tue, 4 Apr 2017 14:42:07 +0200
Subject: [PATCH] 997-device_tree_cmdline

---
 arch/mips/kernel/prom.c | 3 +++
 drivers/of/fdt.c        | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/arch/mips/kernel/prom.c b/arch/mips/kernel/prom.c
index e303cb1ef2..4b17b6532d 100644
--- a/arch/mips/kernel/prom.c
+++ b/arch/mips/kernel/prom.c
@@ -50,6 +50,9 @@ void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align)
 
 void __init __dt_setup_arch(void *bph)
 {
+	if (boot_command_line[0] == '\0')
+		strcpy(boot_command_line, arcs_cmdline);
+
 	if (!early_init_dt_scan(bph))
 		return;
 
diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
index d91f721a05..7bc089353d 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -935,6 +935,9 @@ int __init early_init_dt_scan_chosen(unsigned long node, const char *uname,
 	p = of_get_flat_dt_prop(node, "bootargs", &l);
 	if (p != NULL && l > 0)
 		strlcpy(data, p, min((int)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
-- 
GitLab