diff options
author | Marco Felsch <m.felsch@pengutronix.de> | 2023-10-17 16:51:20 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2023-10-23 10:07:02 +0200 |
commit | b63f4df753b873209687dd614110e2ba1902a80a (patch) | |
tree | 7b10d2160a44690eb04cfb3f96c2edea3aac07d3 /scripts | |
parent | 4d52ae958f005b1a33de4fadadbe73a958f3b7a3 (diff) | |
download | barebox-b63f4df753b873209687dd614110e2ba1902a80a.tar.gz barebox-b63f4df753b873209687dd614110e2ba1902a80a.tar.xz |
scripts: imx: add imx8m_get_offset_size helper
No functional change, just move the offset and signed_size calculation
into a dedicated helper.
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Link: https://lore.barebox.org/20231017145131.3069283-19-m.felsch@pengutronix.de
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/imx/imx.c | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/scripts/imx/imx.c b/scripts/imx/imx.c index 3cfa046504..b0206c6c12 100644 --- a/scripts/imx/imx.c +++ b/scripts/imx/imx.c @@ -325,6 +325,22 @@ static int do_hab(struct config_data *data, int argc, char *argv[]) return 0; } +static void +imx8m_get_offset_size(struct config_data *data, + uint32_t *offset, uint32_t *signed_size) +{ + unsigned int hdrlen = HEADER_LEN; + + if (flexspi_image(data)) + hdrlen += FLEXSPI_HEADER_LEN; + + *signed_size = roundup(data->pbl_code_size + hdrlen, 0x1000); + + *offset += data->header_gap; + if (data->signed_hdmi_firmware_file) + *offset += PLUGIN_HDMI_SIZE; +} + static int do_hab_blocks(struct config_data *data, int argc, char *argv[]) { char *str; @@ -346,17 +362,8 @@ static int do_hab_blocks(struct config_data *data, int argc, char *argv[]) /* * Ensure we only sign the PBL for i.MX8MQ */ - if (data->pbl_code_size && cpu_is_mx8m(data)) { - unsigned int hdrlen = HEADER_LEN; - - if (flexspi_image(data)) - hdrlen += FLEXSPI_HEADER_LEN; - - offset += data->header_gap; - signed_size = roundup(data->pbl_code_size + hdrlen, 0x1000); - if (data->signed_hdmi_firmware_file) - offset += PLUGIN_HDMI_SIZE; - } + if (data->pbl_code_size && cpu_is_mx8m(data)) + imx8m_get_offset_size(data, &offset, &signed_size); if (signed_size > 0) { ret = asprintf(&str, "Blocks = 0x%08x 0x%08x 0x%08x \"%s\"", |