MIPS: Setup boot_command_line before plat_mem_setup
authorPaul Burton <paul.burton@mips.com>
Tue, 16 Jan 2018 15:47:57 +0000 (16:47 +0100)
committerJames Hogan <jhogan@kernel.org>
Thu, 18 Jan 2018 22:06:07 +0000 (22:06 +0000)
commit8ce355cf2e38afdb364d03d12b23d9cf44c3b7f1
tree499cd8cd95397395b08049d8881e2d191e5a3674
parent7a01c19007ad3c7de15d6d8d712e01f40eeed55a
MIPS: Setup boot_command_line before plat_mem_setup

Platforms using DT will typically call __dt_setup_arch from
plat_mem_setup. This in turn calls early_init_dt_scan. When
CONFIG_CMDLINE is set, this leads to its value being copied into
boot_command_line by early_init_dt_scan_chosen. If this happens before
the code setting up boot_command_line in arch_mem_init runs, that code
will go on to append CONFIG_CMDLINE (via builtin_cmdline) to
boot_command_line again, duplicating it. For some command line
parameters (eg. earlycon) this can be a problem. Set up
boot_command_line before early_init_dt_scan_chosen gets called such that
it will not write CONFIG_CMDLINE in this scenario & the arguments aren't
duplicated.

Signed-off-by: Paul Burton <paul.burton@mips.com>
Acked-by: Mathieu Malaterre <malat@debian.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Maarten ter Huurne <maarten@treewalker.org>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/18483/
Signed-off-by: James Hogan <jhogan@kernel.org>
arch/mips/kernel/setup.c