[PATCH 05/14] initcall: Adjust the failure message and return value

Simon Glass sjg at chromium.org
Tue Aug 22 05:16:52 CEST 2023


Move the failure message outside the loop, so it is easier to follow the
code. Avoid swallowing the error code - just pass it along.

Drop the initcall-list address from the output. This is confusing since
we show two addresses. Really it is only the function address which is
useful, since it can be looked up in the map, e.g. with:

   grep -A1 -B1 serial_init u-boot.map

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

 lib/initcall.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/lib/initcall.c b/lib/initcall.c
index 81c5d2450735..0f74cef32f85 100644
--- a/lib/initcall.c
+++ b/lib/initcall.c
@@ -46,11 +46,13 @@ int initcall_run_list(const init_fnc_t init_sequence[])
 		}
 
 		ret = func();
-		if (ret) {
-			printf("initcall sequence %p failed at call %p (err=%d)\n",
-			       init_sequence, (char *)func - reloc_ofs, ret);
-			return -1;
-		}
+	}
+
+	if (ret) {
+		printf("initcall failed at call %p (err=%dE)\n",
+		       (char *)func - reloc_ofs, ret);
+
+		return ret;
 	}
 
 	return 0;
-- 
2.42.0.rc1.204.g551eb34607-goog



More information about the U-Boot mailing list