diff options
author | Tom Rini <trini@konsulko.com> | 2019-04-24 12:27:29 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2019-04-24 12:27:29 -0400 |
commit | 7d994067424776b6184872b82fcaf4c0b95528f9 (patch) | |
tree | f8aaab8764ad4bc88c6389f8ee6b1ee75360b7a6 /include/initcall.h | |
parent | 180e38ad2dbb3340cc71fb4fa335a68f2a4122ef (diff) | |
parent | 8781d04f422e110fef864dd849085054fe5b0e65 (diff) |
Merge tag 'pull-24apr19' of git://git.denx.de/u-boot-dm
Various minor sandbox iumprovements
Fixes for tracing with sandbox
Refactoring for boot_get_fdt()
Diffstat (limited to 'include/initcall.h')
-rw-r--r-- | include/initcall.h | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/include/initcall.h b/include/initcall.h index 3ac01aa2cd2..78d15afe69b 100644 --- a/include/initcall.h +++ b/include/initcall.h @@ -8,12 +8,11 @@ typedef int (*init_fnc_t)(void); -#include <common.h> -#include <initcall.h> -#include <efi.h> - -DECLARE_GLOBAL_DATA_PTR; - +/* + * To enable debugging. add #define DEBUG at the top of the including file. + * + * To find a symbol, use grep on u-boot.map + */ static inline int initcall_run_list(const init_fnc_t init_sequence[]) { const init_fnc_t *init_fnc_ptr; @@ -22,13 +21,17 @@ static inline int initcall_run_list(const init_fnc_t init_sequence[]) unsigned long reloc_ofs = 0; int ret; - if (gd->flags & GD_FLG_RELOC) + /* + * Sandbox is relocated by the OS, so symbols always appear at + * the relocated address. + */ + if (IS_ENABLED(CONFIG_SANDBOX) || (gd->flags & GD_FLG_RELOC)) reloc_ofs = gd->reloc_off; #ifdef CONFIG_EFI_APP reloc_ofs = (unsigned long)image_base; #endif debug("initcall: %p", (char *)*init_fnc_ptr - reloc_ofs); - if (gd->flags & GD_FLG_RELOC) + if (reloc_ofs) debug(" (relocated to %p)\n", (char *)*init_fnc_ptr); else debug("\n"); |