From: Alexandru Gagniuc <mr.nuke.me@gmail.com>
To: u-boot@lists.denx.de
Subject: [PATCH v4 1/8] spl: fit: Drop 'length' argument to board_spl_fit_post_load()
Date: Wed, 20 Jan 2021 10:46:49 -0600 [thread overview]
Message-ID: <20210120164656.1396639-2-mr.nuke.me@gmail.com> (raw)
In-Reply-To: <20210120164656.1396639-1-mr.nuke.me@gmail.com>
The size is derived from the FIT image itself. Any alignment
requirements are machine-specific and known by the board code. Thus
the total length can be derived from the FIT image and knowledge of
the platform. The 'length' argument is redundant. Remove it.
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
CC: Matt Porter <mporter@konsulko.com>
---
arch/arm/mach-imx/spl.c | 7 ++++---
common/spl/spl_fit.c | 4 ++--
include/spl.h | 4 ++--
3 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/arch/arm/mach-imx/spl.c b/arch/arm/mach-imx/spl.c
index aa2686bb92..f193be2e21 100644
--- a/arch/arm/mach-imx/spl.c
+++ b/arch/arm/mach-imx/spl.c
@@ -18,6 +18,7 @@
#include <asm/mach-imx/hab.h>
#include <asm/mach-imx/boot_mode.h>
#include <g_dnl.h>
+#include <linux/libfdt.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -318,11 +319,11 @@ ulong board_spl_fit_size_align(ulong size)
return size;
}
-void board_spl_fit_post_load(ulong load_addr, size_t length)
+void board_spl_fit_post_load(const void *fit)
{
- u32 offset = length - CONFIG_CSF_SIZE;
+ u32 offset = ALIGN(fdt_totalsize(fit), 0x1000);
- if (imx_hab_authenticate_image(load_addr,
+ if (imx_hab_authenticate_image((uintptr_t)fit,
offset + IVT_SIZE + CSF_PAD_SIZE,
offset)) {
panic("spl: ERROR: image authentication unsuccessful\n");
diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c
index a6ad094e91..fc1b5f3e5e 100644
--- a/common/spl/spl_fit.c
+++ b/common/spl/spl_fit.c
@@ -26,7 +26,7 @@ DECLARE_GLOBAL_DATA_PTR;
#define CONFIG_SYS_BOOTM_LEN (64 << 20)
#endif
-__weak void board_spl_fit_post_load(ulong load_addr, size_t length)
+__weak void board_spl_fit_post_load(const void *fit)
{
}
@@ -725,7 +725,7 @@ int spl_load_simple_fit(struct spl_image_info *spl_image,
spl_image->flags |= SPL_FIT_FOUND;
#ifdef CONFIG_IMX_HAB
- board_spl_fit_post_load((ulong)fit, size);
+ board_spl_fit_post_load(fit);
#endif
return 0;
diff --git a/include/spl.h b/include/spl.h
index a7648787b7..5e3e0406c2 100644
--- a/include/spl.h
+++ b/include/spl.h
@@ -638,9 +638,9 @@ int board_return_to_bootrom(struct spl_image_info *spl_image,
/**
* board_spl_fit_post_load - allow process images after loading finished
- *
+ * @fit: Pointer to a valid Flattened Image Tree blob
*/
-void board_spl_fit_post_load(ulong load_addr, size_t length);
+void board_spl_fit_post_load(const void *fit);
/**
* board_spl_fit_size_align - specific size align before processing payload
--
2.26.2
next prev parent reply other threads:[~2021-01-20 16:46 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-20 16:46 [PATCH v4 0/8] spl: fit: Play nicely with OP-TEE and Linux Alexandru Gagniuc
2021-01-20 16:46 ` Alexandru Gagniuc [this message]
2021-02-19 16:55 ` [PATCH v4 1/8] spl: fit: Drop 'length' argument to board_spl_fit_post_load() Tom Rini
2021-01-20 16:46 ` [PATCH v4 2/8] spl: fit: Factor out FIT parsing and use a context struct Alexandru Gagniuc
2021-02-19 16:55 ` Tom Rini
2021-01-20 16:46 ` [PATCH v4 3/8] spl: fit: Pass FIT context via a structure pointer Alexandru Gagniuc
2021-02-19 16:55 ` Tom Rini
2021-01-20 16:46 ` [PATCH v4 4/8] spl: fit: Remove useless loop in spl_fit_get_image_name() Alexandru Gagniuc
2021-02-19 16:55 ` Tom Rini
2021-01-20 16:46 ` [PATCH v4 5/8] spl: fit: Only look up FIT configuration node once Alexandru Gagniuc
2021-02-19 16:55 ` Tom Rini
2021-01-20 16:46 ` [PATCH v4 6/8] image: Do not #if guard board_fit_image_post_process() prototype Alexandru Gagniuc
2021-02-19 16:55 ` Tom Rini
2021-01-20 16:46 ` [PATCH v4 7/8] spl: fit: Replace #ifdef blocks with more readable constructs Alexandru Gagniuc
2021-02-19 16:55 ` Tom Rini
2021-01-20 16:46 ` [PATCH v4 8/8] spl: fit: Load devicetree when a Linux payload is found Alexandru Gagniuc
2021-02-19 16:55 ` Tom Rini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210120164656.1396639-2-mr.nuke.me@gmail.com \
--to=mr.nuke.me@gmail.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox