[PATCH 2/6] boot: android: Add image_android_get_version()
Mattijs Korpershoek
mkorpershoek at baylibre.com
Thu Jun 6 14:23:54 CEST 2024
When reading a boot image header, we may need to retrieve the header
version.
Add a helper function for it.
Signed-off-by: Mattijs Korpershoek <mkorpershoek at baylibre.com>
---
boot/image-android.c | 7 ++++++-
include/image.h | 7 +++++++
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/boot/image-android.c b/boot/image-android.c
index ddd8ffd5e540..4f8fb51585eb 100644
--- a/boot/image-android.c
+++ b/boot/image-android.c
@@ -185,7 +185,7 @@ bool android_image_get_data(const void *boot_hdr, const void *vendor_boot_hdr,
return false;
}
- if (((struct andr_boot_img_hdr_v0 *)boot_hdr)->header_version > 2) {
+ if (android_image_get_version(boot_hdr) > 2) {
if (!vendor_boot_hdr) {
printf("For boot header v3+ vendor boot image has to be provided\n");
return false;
@@ -203,6 +203,11 @@ bool android_image_get_data(const void *boot_hdr, const void *vendor_boot_hdr,
return true;
}
+u32 android_image_get_version(const void *hdr)
+{
+ return ((struct andr_boot_img_hdr_v0 *)hdr)->header_version;
+}
+
static ulong android_image_get_kernel_addr(struct andr_image_data *img_data)
{
/*
diff --git a/include/image.h b/include/image.h
index acffd17e0dfd..18e5ced5ab42 100644
--- a/include/image.h
+++ b/include/image.h
@@ -1963,6 +1963,13 @@ bool is_android_boot_image_header(const void *hdr);
*/
bool is_android_vendor_boot_image_header(const void *vendor_boot_img);
+/**
+ * android_image_get_version() - Retrieve the boot.img version
+ *
+ * Return: Android boot image header version.
+ */
+u32 android_image_get_version(const void *hdr);
+
/**
* get_abootimg_addr() - Get Android boot image address
*
--
2.45.0
More information about the U-Boot
mailing list