[PATCH 4/6] android: boot: Add set_abootimg_addr() and set_avendor_bootimg_addr()
Mattijs Korpershoek
mkorpershoek at baylibre.com
Thu Jun 6 14:23:56 CEST 2024
The only way to configure the load addresses for both bootimg and
vendor_bootimg is by using the "abootimg" command.
If we want to use the C API, there is no equivalent.
Add set_abootimg_addr() and set_avendor_bootimg_addr() so that we can
specify the load address from C.
This can be useful for implementing an Android bootmethod.
Signed-off-by: Mattijs Korpershoek <mkorpershoek at baylibre.com>
---
cmd/abootimg.c | 10 ++++++++++
include/image.h | 14 ++++++++++++++
2 files changed, 24 insertions(+)
diff --git a/cmd/abootimg.c b/cmd/abootimg.c
index 88c77d999290..33381e22dec2 100644
--- a/cmd/abootimg.c
+++ b/cmd/abootimg.c
@@ -21,11 +21,21 @@ ulong get_abootimg_addr(void)
return (_abootimg_addr == -1 ? image_load_addr : _abootimg_addr);
}
+void set_abootimg_addr(ulong addr)
+{
+ _abootimg_addr = addr;
+}
+
ulong get_avendor_bootimg_addr(void)
{
return _avendor_bootimg_addr;
}
+void set_avendor_bootimg_addr(ulong addr)
+{
+ _avendor_bootimg_addr = addr;
+}
+
static int abootimg_get_ver(int argc, char *const argv[])
{
const struct andr_boot_img_hdr_v0 *hdr;
diff --git a/include/image.h b/include/image.h
index 18e5ced5ab42..6deaf406605e 100644
--- a/include/image.h
+++ b/include/image.h
@@ -1977,6 +1977,13 @@ u32 android_image_get_version(const void *hdr);
*/
ulong get_abootimg_addr(void);
+/**
+ * set_abootimg_addr() - Set Android boot image address
+ *
+ * Return: no returned results
+ */
+void set_abootimg_addr(ulong addr);
+
/**
* get_avendor_bootimg_addr() - Get Android vendor boot image address
*
@@ -1984,6 +1991,13 @@ ulong get_abootimg_addr(void);
*/
ulong get_avendor_bootimg_addr(void);
+/**
+ * set_abootimg_addr() - Set Android vendor boot image address
+ *
+ * Return: no returned results
+ */
+void set_avendor_bootimg_addr(ulong addr);
+
/**
* board_fit_config_name_match() - Check for a matching board name
*
--
2.45.0
More information about the U-Boot
mailing list