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 Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CA861C433F5 for ; Sun, 10 Apr 2022 04:47:02 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 66D8583965; Sun, 10 Apr 2022 06:47:00 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=denx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=denx.de; s=phobos-20191101; t=1649566020; bh=TaSqoAfMGMrsUgbzQZyDbViNaqWPuT0N54bhXynMYMI=; h=From:To:Cc:Subject:Date:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From; b=KR+81UgOYlqdsqUeIkbETKSgyrEITyGmPwRAKeDvBwbssMplEz3HYBHfrDqJBtwVg JcCuhqDwenlKOkpS5rbK6vKXP1h4p3igkivftLikIue9ZUEupPlK6fBUAWbXcFg8JB 1xD/v34uEVgCpR2ySfgS8K7NJvjGmUgjQNHXa/XRbi3PcZdukX9+EschLdI/LtK3nd 6vIScGk9M9vFXTJq1QavDHFse2oLi+p8C8xDh1yZkYrlBow0BBFds6YyWYHK4d2sRM /DJHBWSJZTq8syvR+5i9ZiRPnBxIlakPYYuAt5D08LdQd7NToN7Bz54cvTSvhwDRJg AnJNetr/Wt/Xw== Received: from tr.lan (ip-86-49-12-201.net.upcbroadband.cz [86.49.12.201]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: marex@denx.de) by phobos.denx.de (Postfix) with ESMTPSA id E551781DDF; Sun, 10 Apr 2022 06:46:57 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=denx.de; s=phobos-20191101; t=1649566018; bh=TaSqoAfMGMrsUgbzQZyDbViNaqWPuT0N54bhXynMYMI=; h=From:To:Cc:Subject:Date:From; b=nkzKhfem/SepfKcxAranxPDEcyy3e4kw2ZuP/qPOb7TTuvkOilz8+NfWmltLXdK6u xyzWH0pS6WzXNdRXhryklHx4nzmrxS7tZ352qmCIHoXtjLpjPdUXHz+OJjgOKzoxhG VjtMi/xtSjShU1iyA9zSBCYesyJlFbul14VZBxduoYMN6LiUV2Eq9USwhanh0Qb0mf CgPumtLNKjnsglQT4ZeIikEcIu9eTcXP7n9LaIteRBlnrdAGCckhW2wLTP4ZDBzdCQ Mn7dA2RDAgqK93mX6Ha0EUPCDnzZpamOaxztx0zRQIiBntmfxBHk0J3VbkxinbyY2f AKAk8KjvHjpQA== From: Marek Vasut To: u-boot@lists.denx.de Cc: Marek Vasut , "Felix . Vietmeyer @ jila . colorado . edu" , Tom Rini Subject: [PATCH] Revert "env: Load env when ENV_IS_NOWHERE is only location selected" Date: Sun, 10 Apr 2022 06:46:52 +0200 Message-Id: <20220410044652.714323-1-marex@denx.de> X-Mailer: git-send-email 2.35.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 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.103.5 at phobos.denx.de X-Virus-Status: Clean This reverts commit 8d61237edbf6314a701cf78da2c5893a73ff5438. This commit broke environment on literally every board I have access to, with this revert in place, environment works as it should again. The problem I observe with this patch is that saved environment in either SPI NOR or eMMC is never used, the system always falls back to default environment. The 'saveenv' command does succeed, but then after reset, the default env is again used. Furthermore, the commit introduced duplicate code in env_init(), this: " if (!prio) { gd->env_addr = (ulong)&default_environment[0]; gd->env_valid = ENV_INVALID; return 0; } if (ret == -ENOENT) { gd->env_addr = (ulong)&default_environment[0]; gd->env_valid = ENV_INVALID; return 0; } " Furthermore, the commit is missing DCO SoB line. Also note that upstream does not support UltraZed EG board, so this might have been a patch pulled from downstream which did depend on some other downstream behavior. Signed-off-by: Marek Vasut Cc: Felix.Vietmeyer@jila.colorado.edu Cc: Tom Rini --- env/env.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/env/env.c b/env/env.c index 7168cb9d318..e4dfb92e154 100644 --- a/env/env.c +++ b/env/env.c @@ -322,18 +322,17 @@ int env_init(void) debug("%s: Environment %s init done (ret=%d)\n", __func__, drv->name, ret); - } - - if (!prio) { - gd->env_addr = (ulong)&default_environment[0]; - gd->env_valid = ENV_INVALID; - return 0; + if (gd->env_valid == ENV_INVALID) + ret = -ENOENT; } + if (!prio) + return -ENODEV; + if (ret == -ENOENT) { gd->env_addr = (ulong)&default_environment[0]; - gd->env_valid = ENV_INVALID; + gd->env_valid = ENV_VALID; return 0; } -- 2.35.1