diff options
author | Simon Glass <sjg@chromium.org> | 2014-10-01 19:57:22 -0600 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2014-10-22 10:36:54 -0600 |
commit | aacc6c5d106f33bec2b2371411922ff7d424beed (patch) | |
tree | dc2de5c1b00ce070e74dcee15278d880731d394c /lib | |
parent | 10778398b3a0a05a4d00ee4a5b1d6a6f215eb37b (diff) | |
download | u-boot-aacc6c5d106f33bec2b2371411922ff7d424beed.tar.gz u-boot-aacc6c5d106f33bec2b2371411922ff7d424beed.tar.xz u-boot-aacc6c5d106f33bec2b2371411922ff7d424beed.zip |
initcall: Display error number when an error occurs
Now that some initcall functions return a useful error number, display it
when something goes wrong.
Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/initcall.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/initcall.c b/lib/initcall.c index 7597bad555..39f4b3f8ad 100644 --- a/lib/initcall.c +++ b/lib/initcall.c @@ -15,14 +15,16 @@ int initcall_run_list(const init_fnc_t init_sequence[]) for (init_fnc_ptr = init_sequence; *init_fnc_ptr; ++init_fnc_ptr) { unsigned long reloc_ofs = 0; + int ret; if (gd->flags & GD_FLG_RELOC) reloc_ofs = gd->reloc_off; debug("initcall: %p\n", (char *)*init_fnc_ptr - reloc_ofs); - if ((*init_fnc_ptr)()) { - printf("initcall sequence %p failed at call %p\n", + ret = (*init_fnc_ptr)(); + if (ret) { + printf("initcall sequence %p failed at call %p (err=%d)\n", init_sequence, - (char *)*init_fnc_ptr - reloc_ofs); + (char *)*init_fnc_ptr - reloc_ofs, ret); return -1; } } |