RE: [PATCH v3 09/17] nios2: Convert to GENERIC_CMDLINE

From: Tan, Ley Foon
Date: Sun Mar 28 2021 - 21:36:10 EST




> -----Original Message-----
> From: Christophe Leroy <christophe.leroy@xxxxxxxxxx>
> Sent: Friday, March 26, 2021 9:45 PM
> To: will@xxxxxxxxxx; danielwa@xxxxxxxxx; robh@xxxxxxxxxx;
> daniel@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> Cc: linux-arch@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx; linuxppc-
> dev@xxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; linuxppc-
> dev@xxxxxxxxxxxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; microblaze
> <monstr@xxxxxxxxx>; linux-mips@xxxxxxxxxxxxxxx; Tan, Ley Foon
> <ley.foon.tan@xxxxxxxxx>; openrisc@xxxxxxxxxxxxxxxxxxxx; linux-
> hexagon@xxxxxxxxxxxxxxx; linux-riscv@xxxxxxxxxxxxxxxxxxx; x86@xxxxxxxxxx;
> linux-xtensa@xxxxxxxxxxxxxxxx; linux-sh@xxxxxxxxxxxxxxx;
> sparclinux@xxxxxxxxxxxxxxx
> Subject: [PATCH v3 09/17] nios2: Convert to GENERIC_CMDLINE
>
> This converts the architecture to GENERIC_CMDLINE.
>
> Signed-off-by: Christophe Leroy <christophe.leroy@xxxxxxxxxx>
> ---
> arch/nios2/Kconfig | 24 +-----------------------
> arch/nios2/kernel/setup.c | 13 ++++---------
> 2 files changed, 5 insertions(+), 32 deletions(-)
>
> diff --git a/arch/nios2/Kconfig b/arch/nios2/Kconfig index
> c24955c81c92..f66c97b15813 100644
> --- a/arch/nios2/Kconfig
> +++ b/arch/nios2/Kconfig
> @@ -90,31 +90,9 @@ config NIOS2_ALIGNMENT_TRAP
>
> comment "Boot options"
>
> -config CMDLINE_BOOL
> - bool "Default bootloader kernel arguments"
> - default y
> -
> -config CMDLINE
> - string "Default kernel command string"
> - default ""
> - depends on CMDLINE_BOOL
> - help
> - On some platforms, there is currently no way for the boot loader to
> - pass arguments to the kernel. For these platforms, you can supply
> - some command-line options at build time by entering them here. In
> - other cases you can specify kernel args so that you don't have
> - to set them up in board prom initialization routines.
> -
> -config CMDLINE_FORCE
> - bool "Force default kernel command string"
> - depends on CMDLINE_BOOL
> - help
> - Set this to have arguments from the default kernel command string
> - override those passed by the boot loader.
> -
> config NIOS2_CMDLINE_IGNORE_DTB
> bool "Ignore kernel command string from DTB"
> - depends on CMDLINE_BOOL
> + depends on CMDLINE != ""
> depends on !CMDLINE_FORCE
> default y
> help

Missing " select GENERIC_CMDLINE" ?




> diff --git a/arch/nios2/kernel/setup.c b/arch/nios2/kernel/setup.c index
> d2f21957e99c..42464f457a6d 100644
> --- a/arch/nios2/kernel/setup.c
> +++ b/arch/nios2/kernel/setup.c
> @@ -20,6 +20,7 @@
> #include <linux/initrd.h>
> #include <linux/of_fdt.h>
> #include <linux/screen_info.h>
> +#include <linux/cmdline.h>
>
> #include <asm/mmu_context.h>
> #include <asm/sections.h>
> @@ -108,7 +109,7 @@ asmlinkage void __init nios2_boot_init(unsigned r4,
> unsigned r5, unsigned r6,
> unsigned r7)
> {
> unsigned dtb_passed = 0;
> - char cmdline_passed[COMMAND_LINE_SIZE] __maybe_unused =
> { 0, };
> + char cmdline_passed[COMMAND_LINE_SIZE] = { 0, };
>
> #if defined(CONFIG_NIOS2_PASS_CMDLINE)
> if (r4 == 0x534f494e) { /* r4 is magic NIOS */ @@ -127,14 +128,8 @@
> asmlinkage void __init nios2_boot_init(unsigned r4, unsigned r5, unsigned r6,
>
> early_init_devtree((void *)dtb_passed);
>
> -#ifndef CONFIG_CMDLINE_FORCE
> - if (cmdline_passed[0])
> - strlcpy(boot_command_line, cmdline_passed,
> COMMAND_LINE_SIZE);
> -#ifdef CONFIG_NIOS2_CMDLINE_IGNORE_DTB
> - else
> - strlcpy(boot_command_line, CONFIG_CMDLINE,
> COMMAND_LINE_SIZE);
> -#endif
> -#endif
> + if (cmdline_passed[0] ||
> IS_ENABLED(CONFIG_NIOS2_CMDLINE_IGNORE_DTB))
> + cmdline_build(boot_command_line, cmdline_passed,
> COMMAND_LINE_SIZE);
>
> parse_early_param();
> }
> --
> 2.25.0