diff options
author | Simon Glass <sjg@chromium.org> | 2014-02-27 13:26:15 -0700 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2014-03-17 20:05:48 -0600 |
commit | 47f5fcfb4169a8ff6e8c81738b77f8572f972e75 (patch) | |
tree | 328570b34cafd3ab21f64b75f9c3f1f625cd8c45 /include/os.h | |
parent | b2a668b523ee78c56b466300350050924ed59553 (diff) | |
download | u-boot-47f5fcfb4169a8ff6e8c81738b77f8572f972e75.zip u-boot-47f5fcfb4169a8ff6e8c81738b77f8572f972e75.tar.gz u-boot-47f5fcfb4169a8ff6e8c81738b77f8572f972e75.tar.bz2 |
sandbox: Add os_jump_to_image() to run another executable
For some tests it is useful to be able to run U-Boot again but pass on the
same memory contents. Add a function to achieve this.
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/os.h')
-rw-r--r-- | include/os.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/include/os.h b/include/os.h index fa4e39f..9b5da5c 100644 --- a/include/os.h +++ b/include/os.h @@ -253,4 +253,23 @@ int os_write_ram_buf(const char *fname); */ int os_read_ram_buf(const char *fname); +/** + * Jump to a new executable image + * + * This uses exec() to run a new executable image, after putting it in a + * temporary file. The same arguments and environment are passed to this + * new image, with the addition of: + * + * -j <filename> Specifies the filename the image was written to. The + * calling image may want to delete this at some point. + * -m <filename> Specifies the file containing the sandbox memory + * (ram_buf) from this image, so that the new image can + * have access to this. It also means that the original + * memory filename passed to U-Boot will be left intact. + * + * @param dest Buffer containing executable image + * @param size Size of buffer + */ +int os_jump_to_image(const void *dest, int size); + #endif |