[U-Boot] [PATCH 05/18] autoboot: Use CONFIG_AUTOBOOT_STOP_STR_SHA256 indirectly

Simon Glass sjg at chromium.org
Sun May 5 21:53:29 UTC 2019


This CONFIG option is only present if CONFIG_AUTOBOOT_ENCRYPTION is
enabled so it cannot be used in code without that #ifdef. But we want to
reduce the use of #ifdef in this file and in particular to avoid having
two different functions both named passwd_abort() but which do different
things.

In preparation for this, create an intermediate value which is set to an
empty string if there is no value for CONFIG_AUTOBOOT_STOP_STR_SHA256.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

 common/autoboot.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/common/autoboot.c b/common/autoboot.c
index 94133eaeda7..e3086e3828c 100644
--- a/common/autoboot.c
+++ b/common/autoboot.c
@@ -28,6 +28,12 @@ DECLARE_GLOBAL_DATA_PTR;
 /* Stored value of bootdelay, used by autoboot_command() */
 static int stored_bootdelay;
 
+#ifdef CONFIG_AUTOBOOT_ENCRYPTION
+#define AUTOBOOT_STOP_STR_SHA256 CONFIG_AUTOBOOT_STOP_STR_SHA256
+#else
+#define AUTOBOOT_STOP_STR_SHA256 ""
+#endif
+
 #if defined(CONFIG_AUTOBOOT_KEYED)
 #if defined(CONFIG_AUTOBOOT_STOP_STR_SHA256)
 
@@ -61,7 +67,7 @@ static int passwd_abort(uint64_t etime)
 	int ret;
 
 	if (sha_env_str == NULL)
-		sha_env_str = CONFIG_AUTOBOOT_STOP_STR_SHA256;
+		sha_env_str = AUTOBOOT_STOP_STR_SHA256;
 
 	/*
 	 * Generate the binary value from the environment hash value
-- 
2.21.0.1020.gf2820cf01a-goog



More information about the U-Boot mailing list