diff options
author | Simon Glass | 2022-04-30 00:56:54 -0600 |
---|---|---|
committer | Tom Rini | 2022-05-02 09:58:13 -0400 |
commit | 9ae25b9ac9e295ecb50268fd926b220ad8f28e3b (patch) | |
tree | ca5463ed1dc027d711fd656b0c72ed5399d10f76 /arch/sandbox/cpu/spl.c | |
parent | 747093dd4089bdb2eccae90d7bccf33198e78eaa (diff) |
sandbox: Add a build for VPL
Add an initial VPL build for sandbox. This includes the flow:
TPL (with of-platdata) -> VPL -> SPL -> U-Boot
To run it:
./tpl/u-boot-tpl -D
The -D is needed to get the default device tree, which includes the serial
console info.
Add a Makefile check for OF_HOSTFILE which is the option that enables
devicetree control on sandbox.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch/sandbox/cpu/spl.c')
-rw-r--r-- | arch/sandbox/cpu/spl.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/arch/sandbox/cpu/spl.c b/arch/sandbox/cpu/spl.c index 3f107b8acbd..fe5d44d36ed 100644 --- a/arch/sandbox/cpu/spl.c +++ b/arch/sandbox/cpu/spl.c @@ -32,13 +32,21 @@ int sandbox_find_next_phase(char *fname, int maxlen, bool use_img) return 0; } -/* SPL / TPL init function */ +/* SPL / TPL / VPL init function */ void board_init_f(ulong flag) { struct sandbox_state *state = state_get_current(); + int ret; gd->arch.ram_buf = state->ram_buf; gd->ram_size = state->ram_size; + + ret = spl_early_init(); + if (ret) { + debug("spl_early_init() failed: %d\n", ret); + hang(); + } + preloader_console_init(); } u32 spl_boot_device(void) @@ -75,8 +83,6 @@ void spl_board_init(void) { struct sandbox_state *state = state_get_current(); - preloader_console_init(); - if (state->run_unittests) { struct unit_test *tests = UNIT_TEST_ALL_START(); const int count = UNIT_TEST_ALL_COUNT(); |