From a9968d9cb8cb10030491fa05e24b00bd42f6d3a9 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Thu, 30 May 2013 16:00:42 +0000 Subject: [PATCH] lantiq: enable retrieving kernel args from bootloader This patch is a device tree enhancement that IMHO is worthy of mainline. It allows the bootloader's commandline to be preserved even when the device tree specifies one. Signed-off-by: Daniel Gimpelevich SVN-Revision: 36780 --- .../patches-3.10/997-device_tree_cmdline.patch | 12 ++++++++++++ .../patches-3.8/997-device_tree_cmdline.patch | 12 ++++++++++++ .../patches-3.9/997-device_tree_cmdline.patch | 12 ++++++++++++ 3 files changed, 36 insertions(+) create mode 100644 target/linux/generic/patches-3.10/997-device_tree_cmdline.patch create mode 100644 target/linux/generic/patches-3.8/997-device_tree_cmdline.patch create mode 100644 target/linux/generic/patches-3.9/997-device_tree_cmdline.patch diff --git a/target/linux/generic/patches-3.10/997-device_tree_cmdline.patch b/target/linux/generic/patches-3.10/997-device_tree_cmdline.patch new file mode 100644 index 000000000000..8009a297f1fa --- /dev/null +++ b/target/linux/generic/patches-3.10/997-device_tree_cmdline.patch @@ -0,0 +1,12 @@ +--- a/drivers/of/fdt.c ++++ b/drivers/of/fdt.c +@@ -677,6 +677,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((int)l, COMMAND_LINE_SIZE)); ++ p = of_get_flat_dt_prop(node, "bootargs-append", &l); ++ if (p != NULL && l > 0) ++ strlcat(data, p, min(strlen(data) + (int)l, COMMAND_LINE_SIZE)); + + /* + * CONFIG_CMDLINE is meant to be a default in case nothing else diff --git a/target/linux/generic/patches-3.8/997-device_tree_cmdline.patch b/target/linux/generic/patches-3.8/997-device_tree_cmdline.patch new file mode 100644 index 000000000000..8009a297f1fa --- /dev/null +++ b/target/linux/generic/patches-3.8/997-device_tree_cmdline.patch @@ -0,0 +1,12 @@ +--- a/drivers/of/fdt.c ++++ b/drivers/of/fdt.c +@@ -677,6 +677,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((int)l, COMMAND_LINE_SIZE)); ++ p = of_get_flat_dt_prop(node, "bootargs-append", &l); ++ if (p != NULL && l > 0) ++ strlcat(data, p, min(strlen(data) + (int)l, COMMAND_LINE_SIZE)); + + /* + * CONFIG_CMDLINE is meant to be a default in case nothing else diff --git a/target/linux/generic/patches-3.9/997-device_tree_cmdline.patch b/target/linux/generic/patches-3.9/997-device_tree_cmdline.patch new file mode 100644 index 000000000000..8009a297f1fa --- /dev/null +++ b/target/linux/generic/patches-3.9/997-device_tree_cmdline.patch @@ -0,0 +1,12 @@ +--- a/drivers/of/fdt.c ++++ b/drivers/of/fdt.c +@@ -677,6 +677,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((int)l, COMMAND_LINE_SIZE)); ++ p = of_get_flat_dt_prop(node, "bootargs-append", &l); ++ if (p != NULL && l > 0) ++ strlcat(data, p, min(strlen(data) + (int)l, COMMAND_LINE_SIZE)); + + /* + * CONFIG_CMDLINE is meant to be a default in case nothing else -- 2.30.2