From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.6 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_PASS,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 49449C43382 for ; Thu, 27 Sep 2018 21:09:00 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [203.11.71.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A6C2121571 for ; Thu, 27 Sep 2018 21:08:59 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=globallogic.com header.i=@globallogic.com header.b="HeWTx1sM" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A6C2121571 Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=globallogic.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Received: from bilbo.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 42LnVK3qNLzF395 for ; Fri, 28 Sep 2018 07:08:57 +1000 (AEST) Authentication-Results: lists.ozlabs.org; dmarc=pass (p=reject dis=none) header.from=globallogic.com Authentication-Results: lists.ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=globallogic.com header.i=@globallogic.com header.b="HeWTx1sM"; dkim-atps=neutral Authentication-Results: lists.ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=globallogic.com (client-ip=2a00:1450:4864:20::241; helo=mail-lj1-x241.google.com; envelope-from=maksym.kokhan@globallogic.com; receiver=) Authentication-Results: lists.ozlabs.org; dmarc=pass (p=reject dis=none) header.from=globallogic.com Authentication-Results: lists.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=globallogic.com header.i=@globallogic.com header.b="HeWTx1sM"; dkim-atps=neutral Received: from mail-lj1-x241.google.com (mail-lj1-x241.google.com [IPv6:2a00:1450:4864:20::241]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 42Lgvx2SYBzDrGC for ; Fri, 28 Sep 2018 02:57:17 +1000 (AEST) Received: by mail-lj1-x241.google.com with SMTP id f8-v6so3143537ljk.1 for ; Thu, 27 Sep 2018 09:57:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=globallogic.com; s=google; h=from:to:cc:subject:date:message-id; bh=TsgMWFXn3m35qaNjoqwTMCKgzvWTscGjOTl33QCd3aY=; b=HeWTx1sMz5p67YsVMACBy2VqqCPyFC1B4D81X6u7f6iybil4ecf6tDcD9TpP4qYpUd 2e0JJeBp/+atxM3hjaTj6IfD2pUyDsWty93ZT5MDOt+MwFMfKE9FB+AhlB2ZVSNPTXtD ZG/3FODmU+qwkPVBxu0eCKTIAKs35IVa2PUwg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=TsgMWFXn3m35qaNjoqwTMCKgzvWTscGjOTl33QCd3aY=; b=H5ldWyfHvD28Bx5NclEjW5RLqFHJG/TMq2z9TUMycjhp9/pMVBqU0WpPW5y2dQ33wt 6pXS1FrbcL/qLZyAU3M3Q2OfOkSrXHSub4urxwxuESaNPtyMJ9YtDXnrw3MkyKwwKU4Z h9e3fMcIidO84YrAoALAfVxpkvEtIq0vJGzrEwc20vcl2ZJPUkI7sKs0IFhGkwNtE5TO BSzGwdWabHlg/c9J+vDDUINsDIqP/GRKdR8+n7fs0oHRp0HhOxG5NosfXEpo8GNum5gV v2WSW7rsru2JTg3gI1xBDmELZcrQAsiMWHi58C+cy2AsVQZWkKNi7+IgET9FQMIHHQ0B AbkA== X-Gm-Message-State: ABuFfohqnjg5nJ0pnImD8tgc9t2Rq4St5oOznmq3IASfNLAR4YB/eRtx FzGKXJbf4P1JgaulwBRmMQ1rqA== X-Google-Smtp-Source: ACcGV60kOCxI6FfuDCq3qv5Ox+GoLiK+tV1MtqcePzSfH5ERoxv0il+RX0IDLtuvC+r9dmTmo7fmrA== X-Received: by 2002:a2e:2d2:: with SMTP id y79-v6mr8382600lje.100.1538067434185; Thu, 27 Sep 2018 09:57:14 -0700 (PDT) Received: from kbp1-lhp-f55466.synapse.com ([195.238.92.77]) by smtp.gmail.com with ESMTPSA id q75-v6sm515217lfq.95.2018.09.27.09.57.13 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 27 Sep 2018 09:57:13 -0700 (PDT) From: Maksym Kokhan To: Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman Subject: [PATCH 8/8] powerpc: convert to generic builtin command line Date: Thu, 27 Sep 2018 19:57:09 +0300 Message-Id: <1538067429-6047-1-git-send-email-maksym.kokhan@globallogic.com> X-Mailer: git-send-email 2.7.4 X-Mailman-Approved-At: Fri, 28 Sep 2018 06:55:08 +1000 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Andrii Bordunov , Ruslan Bilovol , linux-kernel@vger.kernel.org, Daniel Walker , linuxppc-dev@lists.ozlabs.org, Daniel Walker Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" From: Daniel Walker This updates the powerpc code to use the CONFIG_GENERIC_CMDLINE option. [maksym.kokhan@globallogic.com: add strlcat to prom_init_check.sh whitelist] Cc: Daniel Walker Cc: Daniel Walker Signed-off-by: Daniel Walker Signed-off-by: Maksym Kokhan --- arch/powerpc/Kconfig | 23 +---------------------- arch/powerpc/kernel/prom.c | 4 ++++ arch/powerpc/kernel/prom_init.c | 8 ++++---- arch/powerpc/kernel/prom_init_check.sh | 2 +- 4 files changed, 10 insertions(+), 27 deletions(-) diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index a806692..f87906a 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig @@ -172,6 +172,7 @@ config PPC select GENERIC_STRNCPY_FROM_USER select GENERIC_STRNLEN_USER select GENERIC_TIME_VSYSCALL + select GENERIC_CMDLINE select HAVE_ARCH_AUDITSYSCALL select HAVE_ARCH_JUMP_LABEL select HAVE_ARCH_KGDB @@ -787,28 +788,6 @@ config PPC_DENORMALISATION Add support for handling denormalisation of single precision values. Useful for bare metal only. If unsure say Y here. -config CMDLINE_BOOL - bool "Default bootloader kernel arguments" - -config CMDLINE - string "Initial kernel command string" - depends on CMDLINE_BOOL - default "console=ttyS0,9600 console=tty0 root=/dev/sda2" - 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 - most cases you will need to specify the root device here. - -config CMDLINE_FORCE - bool "Always use the default kernel command string" - depends on CMDLINE_BOOL - help - Always use the default kernel command string, even if the boot - loader passes other arguments to the kernel. - This is useful if you cannot or don't want to change the - command-line options your boot loader passes to the kernel. - config EXTRA_TARGETS string "Additional default image types" help diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c index c4d7078..f8c6e63 100644 --- a/arch/powerpc/kernel/prom.c +++ b/arch/powerpc/kernel/prom.c @@ -34,6 +34,7 @@ #include #include #include +#include #include #include @@ -716,6 +717,9 @@ void __init early_init_devtree(void *params) */ of_scan_flat_dt(early_init_dt_scan_chosen_ppc, boot_command_line); + /* append and prepend any arguments built into the kernel. */ + cmdline_add_builtin(boot_command_line, NULL, COMMAND_LINE_SIZE); + /* Scan memory nodes and rebuild MEMBLOCKs */ of_scan_flat_dt(early_init_dt_scan_root, NULL); of_scan_flat_dt(early_init_dt_scan_memory_ppc, NULL); diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c index 9b38a2e..e9214c6 100644 --- a/arch/powerpc/kernel/prom_init.c +++ b/arch/powerpc/kernel/prom_init.c @@ -30,6 +30,7 @@ #include #include #include +#include #include #include #include @@ -634,11 +635,10 @@ static void __init early_cmdline_parse(void) p = prom_cmd_line; if ((long)prom.chosen > 0) l = prom_getprop(prom.chosen, "bootargs", p, COMMAND_LINE_SIZE-1); -#ifdef CONFIG_CMDLINE + if (l <= 0 || p[0] == '\0') /* dbl check */ - strlcpy(prom_cmd_line, - CONFIG_CMDLINE, sizeof(prom_cmd_line)); -#endif /* CONFIG_CMDLINE */ + cmdline_add_builtin(prom_cmd_line, NULL, sizeof(prom_cmd_line)); + prom_printf("command line: %s\n", prom_cmd_line); #ifdef CONFIG_PPC64 diff --git a/arch/powerpc/kernel/prom_init_check.sh b/arch/powerpc/kernel/prom_init_check.sh index acb6b92..b1d7ca1 100644 --- a/arch/powerpc/kernel/prom_init_check.sh +++ b/arch/powerpc/kernel/prom_init_check.sh @@ -18,7 +18,7 @@ WHITELIST="add_reloc_offset __bss_start __bss_stop copy_and_flush _end enter_prom memcpy memset reloc_offset __secondary_hold -__secondary_hold_acknowledge __secondary_hold_spinloop __start +__secondary_hold_acknowledge __secondary_hold_spinloop __start strlcat strcmp strcpy strlcpy strlen strncmp strstr kstrtobool logo_linux_clut224 reloc_got2 kernstart_addr memstart_addr linux_banner _stext __prom_init_toc_start __prom_init_toc_end btext_setup_display TOC." -- 2.7.4