summaryrefslogtreecommitdiff
path: root/include/image.h
diff options
context:
space:
mode:
authorJulius Werner <jwerner@chromium.org>2019-07-24 19:37:54 -0700
committerTom Rini <trini@konsulko.com>2019-07-29 09:30:42 -0400
commit2090854cd2f228bab546f2718ccdbe1664830d3c (patch)
tree6b87d8e181377b3f9a0e6af8c0a14d5197ffe584 /include/image.h
parent75551c8bfc9545e31ec2ce238cac3857904007b8 (diff)
common: Move bootm_decomp_image() to image.c (as image_decomp())
Upcoming patches want to add decompression to use cases that are no longer directly related to booting. It makes sense to retain a single decompression routine, but it should no longer be in bootm.c (which is not compiled for all configurations). This patch moves bootm_decomp_image() to image.c and renames it to image_decomp() in preparation of those upcoming patches. Signed-off-by: Julius Werner <jwerner@chromium.org> Reviewed-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com> [trini: Fix warning around handle_decomp_error being unused] Signed-off-by: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'include/image.h')
-rw-r--r--include/image.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/include/image.h b/include/image.h
index 5f82194951..27d7cb9d1e 100644
--- a/include/image.h
+++ b/include/image.h
@@ -850,6 +850,23 @@ static inline int image_check_target_arch(const image_header_t *hdr)
#endif /* USE_HOSTCC */
/**
+ * image_decomp() - decompress an image
+ *
+ * @comp: Compression algorithm that is used (IH_COMP_...)
+ * @load: Destination load address in U-Boot memory
+ * @image_start Image start address (where we are decompressing from)
+ * @type: OS type (IH_OS_...)
+ * @load_bug: Place to decompress to
+ * @image_buf: Address to decompress from
+ * @image_len: Number of bytes in @image_buf to decompress
+ * @unc_len: Available space for decompression
+ * @return 0 if OK, -ve on error (BOOTM_ERR_...)
+ */
+int image_decomp(int comp, ulong load, ulong image_start, int type,
+ void *load_buf, void *image_buf, ulong image_len,
+ uint unc_len, ulong *load_end);
+
+/**
* Set up properties in the FDT
*
* This sets up properties in the FDT that is to be passed to linux.