From patchwork Thu Apr 4 11:59:42 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thierry Reding X-Patchwork-Id: 1077205 X-Patchwork-Delegate: twarren@nvidia.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="XU8rs3QE"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44ZhYY6XWFz9sPd for ; Thu, 4 Apr 2019 23:08:33 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 94EC0C21E07; Thu, 4 Apr 2019 12:06:27 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=FREEMAIL_FROM, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 973F6C21EA1; Thu, 4 Apr 2019 12:00:36 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id CC805C21C29; Thu, 4 Apr 2019 12:00:22 +0000 (UTC) Received: from mail-wr1-f65.google.com (mail-wr1-f65.google.com [209.85.221.65]) by lists.denx.de (Postfix) with ESMTPS id B4AB7C21EA1 for ; Thu, 4 Apr 2019 12:00:14 +0000 (UTC) Received: by mail-wr1-f65.google.com with SMTP id y7so3390749wrn.11 for ; Thu, 04 Apr 2019 05:00:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=27hH0HpHz4vkxl7l9JY2w0jXcUra6t8ou341NA19Ysc=; b=XU8rs3QE1jwSPJpvRkLpC0V6Y+Ugjno2hMoLhThq8ivmF2rzkq07tVzOGYAUfBtdQ7 Y/5QjLSt7rFYxYJVX6+03Kis3fQgZpAv8IYNqjMAx3qn1fKdVZz+4FXuizJ1NcK5XHoA 5Y9fln3ErlYIempezILeXjVD7baCI87qOZnRvD1hYdtgE1HFxjpd8ExWRjcyUa5cwc/6 2owXXL6biJAPRlwOcwtEFMAngT6KjDg/AzEv9YB/dSrypcs6S8zDj2m2XNKg0WKE4yUB gif1e9B0BNOuI5vsvDIs8mBcy+z/Hm7kWyhbFplWTAJDN4AKhaF1wQJjOsef6Gb/ts9h wpgA== 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:in-reply-to :references:mime-version:content-transfer-encoding; bh=27hH0HpHz4vkxl7l9JY2w0jXcUra6t8ou341NA19Ysc=; b=cNq9kd88YxzFYGIFnYgvOvRyn6CgHoaZRbMxvLBClOpFWgQn0U371keIvOjoNJDybD UmqB65DNQ89+TWF0FpYjc4LoZD4yuEW4A07NKgI+zIkk0vyTWQyZRyMBWw8iJsZlthdj VTIp97wueQ67FLkmY5ZpoaXuf9xx0WAbd3Psq5s5ZxNCKjN0xD9euz4zzKfa32+Eo6RV Qf6Hp67vC+my/iQOEbQjiT7dZOSmhhgXaTga7WhRYp/CC3UnqafMt+g9qf4UEQ0beUF9 thpQ5K1dKDV8Ao5WfRbKEjBytSubXlsuIcz4ljLvskTTD2oJF4etc402705H9R/YMujb nmEQ== X-Gm-Message-State: APjAAAVMFowGIYNI6GZSup0lJzHnGPOwbO7rk7db3xbMkIBr7qdrOOnl YpN99EnftijtSnF8THcr9Is= X-Google-Smtp-Source: APXvYqwcFug447upuqDeYJOvKDaZQw99GgDVQ+HL40ZAJAHEp7CEcX/37sIcmDIzwu8JY2o11uI57w== X-Received: by 2002:adf:c788:: with SMTP id l8mr3762375wrg.143.1554379214345; Thu, 04 Apr 2019 05:00:14 -0700 (PDT) Received: from localhost (pD9E51B25.dip0.t-ipconnect.de. [217.229.27.37]) by smtp.gmail.com with ESMTPSA id o20sm19297048wmh.21.2019.04.04.05.00.13 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 04 Apr 2019 05:00:13 -0700 (PDT) From: Thierry Reding To: Tom Warren Date: Thu, 4 Apr 2019 13:59:42 +0200 Message-Id: <20190404115942.17947-20-thierry.reding@gmail.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190404115942.17947-1-thierry.reding@gmail.com> References: <20190404115942.17947-1-thierry.reding@gmail.com> MIME-Version: 1.0 Cc: u-boot@lists.denx.de, Stephen Warren , Jonathan Hunter Subject: [U-Boot] [PATCH v4 19/19] ARM: tegra: Import cbootargs value from cboot DTB X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 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" From: Thierry Reding Read the boot arguments passed by cboot via the /chosen/bootargs property and store it in the cbootargs environment variable. Signed-off-by: Thierry Reding --- arch/arm/mach-tegra/cboot.c | 47 +++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/arch/arm/mach-tegra/cboot.c b/arch/arm/mach-tegra/cboot.c index 6c6d06d89a5d..3f42ffeb73c0 100644 --- a/arch/arm/mach-tegra/cboot.c +++ b/arch/arm/mach-tegra/cboot.c @@ -8,7 +8,9 @@ #include #include #include +#include +#include #include #include @@ -546,10 +548,49 @@ out: return err; } +static char *strip(const char *ptr) +{ + const char *end; + + while (*ptr && isblank(*ptr)) + ptr++; + + /* empty string */ + if (*ptr == '\0') + return strdup(ptr); + + end = ptr; + + while (end[1]) + end++; + + while (isblank(*end)) + end--; + + return strndup(ptr, end - ptr + 1); +} + +static char *cboot_get_bootargs(const void *fdt) +{ + const char *args; + int offset, len; + + offset = fdt_path_offset(fdt, "/chosen"); + if (offset < 0) + return NULL; + + args = fdt_getprop(fdt, offset, "bootargs", &len); + if (!args) + return NULL; + + return strip(args); +} + int cboot_late_init(void) { const void *fdt = (const void *)cboot_boot_x0; uint8_t mac[ETH_ALEN]; + char *bootargs; int err; set_calculated_env_vars(); @@ -564,5 +605,11 @@ int cboot_late_init(void) if (!err) eth_env_set_enetaddr("ethaddr", mac); + bootargs = cboot_get_bootargs(fdt); + if (bootargs) { + env_set("cbootargs", bootargs); + free(bootargs); + } + return 0; }