From patchwork Mon Feb 22 19:18:51 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Niko Mauno X-Patchwork-Id: 1443273 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=vaisala.com header.i=@vaisala.com header.a=rsa-sha256 header.s=selector1 header.b=Pl+ekWyQ; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4Dkssm3VrKz9sVF for ; Tue, 23 Feb 2021 06:38:04 +1100 (AEDT) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 6B02E829A9; Mon, 22 Feb 2021 20:37:33 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=vaisala.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=vaisala.com header.i=@vaisala.com header.b="Pl+ekWyQ"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 90BFC8297B; Mon, 22 Feb 2021 20:19:26 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=0.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FORGED_SPF_HELO,MSGID_FROM_MTA_HEADER, SPF_HELO_PASS autolearn=no autolearn_force=no version=3.4.2 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on0601.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe0d::601]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 3A38B8295A for ; Mon, 22 Feb 2021 20:19:23 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=vaisala.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=niko.mauno@vaisala.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kvxffbb2JW19hd9eJLqD/xs18zLNsVJI6AyXw4Sv720TWoffbVw8Lf/v5oKW7bKV8mO5qZulj66jkfXXC6H+Iaoa2l0M25zdzRlzFUjfFRlbcf8ZY8OXIA2haUQQ2uddgi8PkJkUZq8pr2rCqbjA4J2alRSht6XgJjAr7QYt+dTvlMpIpkueIaTGaDbV7VrMDHep8do89FolSyolWM2VkJffOs5vW7f/Eub8U9EhMdLTTyJO2LZaw5jDrDl5VtPKMBpGRGI+cdc91eXOmomynXhDZGnVL+53umiLVrye80bOVxbR39ZxXoBq5Rr+L0jG+EZb3zwzhPir2PJdBjwDJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Xj1NPtMPdAAx7pISA2MwZrG4buHLqE9u49wxbEmtNks=; b=EqLKAwC47/8hEGTzq6HxrwC4Tkg5/e34TohnyBN13I89IIx3h/U8zfMe2gB6YKVakCAbhQ4O6rmxDIBs95AdT1iJMefUMtvROx0OXJhre+v/V4EbGdkm3VppQcAraYt4fJzoy1eAsE7bKVr7Hztbv2tgy722QfOg0QIo6Us04Zk2L/rl4/czLVFZYbUA5CYzrw4dJtIYMeXVM3vdY36EhWf8mChKf7Om4YWA7DmYQu+LW2ScDUiym94+P0D0OPtVQrqaLKfTfkfprvhgalMyShgcwilo0/INqjmb86z8/BIRBNv8WxnhnDyXE0o+hKbxhoXhIrqs3is2ElnjsXqoNg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=vaisala.com; dmarc=pass action=none header.from=vaisala.com; dkim=pass header.d=vaisala.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vaisala.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Xj1NPtMPdAAx7pISA2MwZrG4buHLqE9u49wxbEmtNks=; b=Pl+ekWyQMI6uqdfFOACaFX8oPrk3lZlom7Gzc/RyIXYPuGH+d7Ce7HGJJM/ekIOhCx1GaVXZkriJLJJfHFT9vmonr0ly63LeIihjcWRnJPw1PM7jFT7+4w8i6mnjVkbHpbizQaDmoXPKkLH6hbQmzqQ3YzDoHCtod5mdYNTXnuTzGhCO2yZbxEfr0404WD3dwb4eCOXg19b3HgIElR6txTlLYgB6buvoysJeEvE6upvybFQ9//qlFFWC2YiKNUfkwqiVwrJPi2uAiCsQZl1XEHBvJH9/OqCiaLbpxYv9OEZWtrpbdQaf3D9+sxbfyL2XqfpbN2234dAnubPe6Ac72Q== Authentication-Results: lists.denx.de; dkim=none (message not signed) header.d=none;lists.denx.de; dmarc=none action=none header.from=vaisala.com; Received: from AM8PR06MB6945.eurprd06.prod.outlook.com (2603:10a6:20b:1d6::19) by AM4PR0601MB2212.eurprd06.prod.outlook.com (2603:10a6:200:49::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3868.29; Mon, 22 Feb 2021 19:19:22 +0000 Received: from AM8PR06MB6945.eurprd06.prod.outlook.com ([fe80::8055:34bd:71c1:9576]) by AM8PR06MB6945.eurprd06.prod.outlook.com ([fe80::8055:34bd:71c1:9576%7]) with mapi id 15.20.3868.033; Mon, 22 Feb 2021 19:19:22 +0000 From: Niko Mauno To: u-boot@lists.denx.de Cc: Niko Mauno Subject: [PATCH] fdt_support.c: Allow late kernel cmdline modification Date: Mon, 22 Feb 2021 19:18:51 +0000 Message-Id: <20210222191851.8009-1-niko.mauno@vaisala.com> X-Mailer: git-send-email 2.20.1 X-Originating-IP: [193.143.230.131] X-ClientProxiedBy: HE1PR08CA0075.eurprd08.prod.outlook.com (2603:10a6:7:2a::46) To AM8PR06MB6945.eurprd06.prod.outlook.com (2603:10a6:20b:1d6::19) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from hel-eptripper.corp.vaisala.com (193.143.230.131) by HE1PR08CA0075.eurprd08.prod.outlook.com (2603:10a6:7:2a::46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3868.27 via Frontend Transport; Mon, 22 Feb 2021 19:19:21 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 40d24663-b357-4eb2-643b-08d8d766c25d X-MS-TrafficTypeDiagnostic: AM4PR0601MB2212: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:7691; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: M1iEWfdrYzTQ6faZbJXgL2DSPlLvKEAz/aTE03E7HCOprUYns+UgCRHvAisyjSUyooJF2HWDa0dASvrBIgmxnS718/Uu4kv5I0SiGCh6oKVG7/S9zco0K3sBRmRfizrSUaW5kEy48gryezqRZb/rRBa9W31rZBOG56PRMu6vn3KrjdhmLT+/tQRQ+9tdH9P/Cgt4/f5RssoydeB8JXuxn/lKZeREhy3e2bXzVummMtEJ7CBTGono+BXeiNGyhln0rT7Cbi1m30iYxcHn91fH3+hRff1nQp2E4jDSwWFIFTgsivwzwbJaVliDA3wVg/ZbFEXGL93M0VUj/xxaPiDFYiHFwIliXX/g//72FMnpTX0NMmKqsIGR9yxKgwOOL0zb2lEVeZn9sZ1crUf+AFcflcMYLC2y3rKQwJ3lzXBrdGO7Sw6u5QrgQTqRn+9BYxEBiMZdvYMX0Z/sF/ypqNaHYBsqx0Lwap9bJkWLs/+ATNp1NsQ+A5ts8hT01nr5oJHSCwwL1ipE0fAO6F93LvAx1A== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM8PR06MB6945.eurprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(346002)(366004)(396003)(39850400004)(376002)(136003)(66556008)(86362001)(66946007)(956004)(6666004)(2906002)(83380400001)(8936002)(36756003)(8676002)(186003)(5660300002)(4326008)(316002)(7696005)(52116002)(44832011)(6486002)(6916009)(66476007)(478600001)(107886003)(16526019)(1076003)(2616005)(26005); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: xUNr2kUXcHaZ9FyYlCTfz+dCaInrEHpWuBu7V2z4jfD6Mo5yaf489xAXG6k2oSnjjXDnDuGP4PpxQ1sY4pipYxWnhBhH5QY92cP4nNX1WVvsljvJEO07Uhc7MTwM1n6I6UooYMmubRpgnVbdQ+FMW7UZpuKa+h0zzIwccW8BZwJu6/lC6PzIw02bgEcheSMemISLBr1TM2witwKW1EfDV/rDg4ax29kOsNH0wJlpIL11vuIlPzL//917m79Eerul03h8NSva6o+4zXgQWjg+CkvzWwTvxompXhvjjsz+jL9vDZHJUj0+FDz4l+ePcwsAN961JWZcUCS0YcwWK+3AgpjEtg4pBNAG70Erp9/VqGovdkvrq301yjjfbpp90Psw5s0+TzJfL6W3oa4mmeLLzsoa9JplJkz/dH0PQvpWoSBIahJrqDMWsMP+hf0DQ611GLIxTI+1p3vumVvHK1iEmkmIxwGwOCIvXi51R/cByJTx+aBd6YSc0O0tstw5CQBURac7qI0VQuK1LddMaHTB97mf+LbZ71pL6T8VVc9myYJiBlQTp7XpK0mSj1zN/Z8njF8c70D7GY+QHxbiCEiwCYicclIoEQpoJqNMCm29F0k0sBsgfwJA1/3cyAqexO4JAgzq4yq3u8+JE8nIIWpS5bnAtYisn+E2AWBZRxS3kMMlyoNI9cMyLhcEuuAzr3hj3UuPHcbujZNiuwKCP9DWHQ0ZhzbnI76CPrf1cWlM1g44yUmUOMkgxrp1D8hF+gG14lp/9l4UonjJgYZh0SPy/YBE3t5RjHQ0wmyt0FSquGkt/Zj8wFWdmG84JzdmT6Um2zbUw2TgwROMWuDOBbCJVEZU4nUY/kYf0Naen6l0uWG2D/suTLTXnbR+WrzSovdzZeGr56lrQ5VT5VSoSdvn9z6xsw2wE7LSRZWsAGgKWWXCa+Rm1fv8jSh7flgOdkcHAHYUpIBIFKTWPMGfcFHI/b+sEEc9OxSQrlfR7E0H2Pc7VmfbeZMMYzhf9pmhgZEtz/9x/wE21+b2Xx5wPWTD5ccgAeGBicTOPyfyOjzHUimlu8AVjWke1S3btKVvsCRhAkYNA92+x1/Ss56sT/kt9uBypm9ni6vXm2J50edmw1BaXgNUDkJeNkbTOFzuilMmH7FD/eKnq3+e3cCfpBnPNX1i3mOKfF/MVj807d11NKRS5+PW2S9h40oNQqmmss7mW37PFJK/D7OyEsK3j5+a8t5fgdPTpGuYtku2EI9xdOjubUnyYSaViFUjTOIfWnFwiuopNDTmD06rPAWWIgNcdhwAFpRX6be1UgfhcXAnhUa8/6FbKluVsmKZxEedlGAK X-OriginatorOrg: vaisala.com X-MS-Exchange-CrossTenant-Network-Message-Id: 40d24663-b357-4eb2-643b-08d8d766c25d X-MS-Exchange-CrossTenant-AuthSource: AM8PR06MB6945.eurprd06.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Feb 2021 19:19:22.1656 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 6d7393e0-41f5-4c2e-9b12-4c2be5da5c57 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: K8OpvCHucYd/uuAgkqfamPT4WztO2uqB3Ad8796P1G6TIvlc0tOoVxMK2K11LiR1RgizFKoN43C9hp7zDQlhYA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0601MB2212 X-Mailman-Approved-At: Mon, 22 Feb 2021 20:37:21 +0100 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.102.3 at phobos.denx.de X-Virus-Status: Clean By declaring board-specific board_fdt_chosen_bootargs() the kernel command line arguments can be adjusted before injecting to flat dt chosen node. Signed-off-by: Niko Mauno --- common/fdt_support.c | 12 +++++++++++- include/fdt_support.h | 10 ++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/common/fdt_support.c b/common/fdt_support.c index 08d540bfc8..4379507e30 100644 --- a/common/fdt_support.c +++ b/common/fdt_support.c @@ -269,6 +269,15 @@ int fdt_initrd(void *fdt, ulong initrd_start, ulong initrd_end) return 0; } +/** + * board_fdt_chosen_bootargs - boards may override this function to use + * alternative kernel command line arguments + */ +__weak char *board_fdt_chosen_bootargs(void) +{ + return env_get("bootargs"); +} + int fdt_chosen(void *fdt) { int nodeoffset; @@ -286,7 +295,8 @@ int fdt_chosen(void *fdt) if (nodeoffset < 0) return nodeoffset; - str = env_get("bootargs"); + str = board_fdt_chosen_bootargs(); + if (str) { err = fdt_setprop(fdt, nodeoffset, "bootargs", str, strlen(str) + 1); diff --git a/include/fdt_support.h b/include/fdt_support.h index 46eb1dbbb2..e2a4689cd8 100644 --- a/include/fdt_support.h +++ b/include/fdt_support.h @@ -185,6 +185,16 @@ int fdt_find_or_add_subnode(void *fdt, int parentoffset, const char *name); */ int ft_board_setup(void *blob, struct bd_info *bd); +/** + * board_fdt_chosen_bootargs() - Arbitrarily amend fdt kernel command line + * + * This is used for late modification of kernel command line arguments just + * before they are added into the /chosen node in flat device tree. + * + * @return: pointer to kernel command line arguments in memory + */ +char *board_fdt_chosen_bootargs(void); + /* * The keystone2 SOC requires all 32 bit aliased addresses to be converted * to their 36 physical format. This has to happen after all fdt nodes