sandbox: Allow chaining from SPL to U-Boot proper

SPL is expected to load and run U-Boot. This needs to work with sandbox also.
Provide a function to locate the U-Boot image, and another to start it. This
allows SPL to function on sandbox as it does on other archs.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2016-07-04 11:57:45 -06:00
parent 72a7e07604
commit d4e33f5a72
2 changed files with 76 additions and 0 deletions

View file

@ -286,6 +286,31 @@ int os_read_ram_buf(const char *fname);
*/
int os_jump_to_image(const void *dest, int size);
/**
* os_find_u_boot() - Determine the path to U-Boot proper
*
* This function is intended to be called from within sandbox SPL. It uses
* a few heuristics to find U-Boot proper. Normally it is either in the same
* directory, or the directory above (since u-boot-spl is normally in an
* spl/ subdirectory when built).
*
* @fname: Place to put full path to U-Boot
* @maxlen: Maximum size of @fname
* @return 0 if OK, -NOSPC if the filename is too large, -ENOENT if not found
*/
int os_find_u_boot(char *fname, int maxlen);
/**
* os_spl_to_uboot() - Run U-Boot proper
*
* When called from SPL, this runs U-Boot proper. The filename is obtained by
* calling os_find_u_boot().
*
* @fname: Full pathname to U-Boot executable
* @return 0 if OK, -ve on error
*/
int os_spl_to_uboot(const char *fname);
/**
* Read the current system time
*