From: Marco Felsch <m.felsch@pengutronix.de>
To: Ahmad Fatoum <a.fatoum@pengutronix.de>
Cc: BAREBOX <barebox@lists.infradead.org>
Subject: Re: [PATCH 20/23] ARM: i.MX8M: Add support to extract OP-TEE provided informations
Date: Thu, 15 Jan 2026 16:19:53 +0100 [thread overview]
Message-ID: <20260115151953.ufmzak6ax57q37sy@pengutronix.de> (raw)
In-Reply-To: <c0aeacd1-8b11-4f98-ba8a-dd4af0d6e333@pengutronix.de>
On 26-01-15, Ahmad Fatoum wrote:
> Hi,
>
> On 11/17/25 10:15 AM, Sascha Hauer wrote:
> > On Mon, Nov 10, 2025 at 09:35:00PM +0100, Marco Felsch wrote:
> >> Extract the OP-TEE overlay fragements information into a dedicated
> >> overlay buffer and add the handoff data on success. The handoff data is
> >> used by next commit.
> >>
> >> Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
> >> ---
> >> arch/arm/mach-imx/esdctl.c | 40 ++++++++++++++++++++++++++++++++++++++++
> >> 1 file changed, 40 insertions(+)
> >>
> >> diff --git a/arch/arm/mach-imx/esdctl.c b/arch/arm/mach-imx/esdctl.c
> >> index 964d438e3f3433332e351d9a70f91857ee33e0b4..b9393fba4ab0f14992d2fec32b0e1b7f1d4bbdfd 100644
> >> --- a/arch/arm/mach-imx/esdctl.c
> >> +++ b/arch/arm/mach-imx/esdctl.c
> >> @@ -1015,10 +1015,50 @@ resource_size_t imx8m_barebox_earlymem_size(unsigned buswidth)
> >> return min_t(resource_size_t, SZ_4G - MX8M_DDR_CSD1_BASE_ADDR, size);
> >> }
> >>
> >> +static void imx8m_extract_optee_fdto(void)
> >> +{
> >> + unsigned int early_fdt_sz, fdto_size;
> >> + void *early_fdt, *fdto_dst;
> >> +
> >> + imx_scratch_get_fdt(&early_fdt, &early_fdt_sz);
> >> + /* SCRATCH_FDT_SIZE == 0, e.g. if OP-TEE w/o CFG_DT support is used */
> >> + if (early_fdt_sz == 0)
> >> + return;
> >> +
> >> + imx_scratch_get_optee_fdto(&fdto_dst, &fdto_size);
> >> + /* SCRATCH_FDTO_SIZE == 0 if feature (back-channel) is not required */
> >> + if (fdto_size == 0) {
> >> + pr_debug("OP-TEE dest DTBO size == 0, skip extracting\n");
> >> + return;
> >> + }
> >> +
> >> + /*
> >> + * OP-TEE DT handling is really cumbersome. In case an external DT was
> >> + * supplied, OP-TEE re-use this DT and appends overlays.
> >> + *
> >> + * Extract the overlays into a single overlay file to make it easier
> >> + * to apply these onto the barebox and kernel DT.
> >> + *
> >> + * It will become easier once barebox supports the transfer-list
> >> + * protocol and the protocol itself has overlay-entry support.
> >> + */
> >
> > The problem doesn't seem to be i.MX8M specific, so we'll end up
> > duplicating this for other SoCs. Couldn't you do optee_extract_fdto() in
> > optee_register_overlay() instead?
> >
> > Also we are in PBL here. The device tree is already in the i.MX scratch
> > space which is available in barebox proper as well, so you could move
> > the code there.
>
> On top of that, we don't have even MMU enabled at this point of time.
>
>
> >
> >> + if (optee_extract_fdto(early_fdt, fdto_dst, fdto_size)) {
> >> + pr_warn("Failed to extract OP-TEE FDTO, continue without FDTO\n");
> >> + /*
> >> + * Don't BUG() because the system may have compile-time config
> >> + * support
> >> + */
> >> + return;
> >> + }
> >> +
> >> + handoff_data_add(HANDOFF_DATA_BL32_DT_OVL, fdto_dst, fdto_size);
> >
> > The overlay isn't used in barebox itself, but only for the Kernel.
This is not true. This patchset adds to support to use the overlay
within barebox too. With the patches Fabian provided, it would eliminate
the need for i.MX6(ULL) boards to have this strange initcall which
checks a magic memory location for an overlay to apply it.
> >
> > You Could just pick up the overlay from the i.MX scratch space in
> > barebox proper and pass it to optee_register_overlay().
>
> Agreed. There seems to be no need to do this in the PBL.
The early barebox code checks for HANDOFF_DATA_BL32_DT_OVL and applies
the overlay. Do you suggest that I shall extract the data within barebox
common code rather? I'm not sure if this is even possible.
Regards,
Marco
>
> Thanks,
> Ahmad
>
> >
> > Sascha
> >
> >
>
> --
> Pengutronix e.K. | |
> Steuerwalder Str. 21 | http://www.pengutronix.de/ |
> 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
> Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
>
>
--
#gernperDu
#CallMeByMyFirstName
Pengutronix e.K. | |
Steuerwalder Str. 21 | https://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-9 |
next prev parent reply other threads:[~2026-01-15 15:20 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-10 20:34 [PATCH 00/23] Improve OP-TEE handling Marco Felsch
2025-11-10 20:34 ` [PATCH 01/23] pbl: compressed-dtb: add missing includes Marco Felsch
2026-01-14 12:03 ` Ahmad Fatoum
2025-11-10 20:34 ` [PATCH 02/23] pbl: fdt: fix fdt_fixup_mem error handling Marco Felsch
2026-01-14 12:04 ` Ahmad Fatoum
2025-11-10 20:34 ` [PATCH 03/23] ARM: atf: add missing includes in atf_common.h Marco Felsch
2026-01-14 12:04 ` Ahmad Fatoum
2025-11-10 20:34 ` [PATCH 04/23] ARM: i.MX8M: add support to pass DT via imx8m{m,n,q,p}_load_and_start_image_via_tfa() Marco Felsch
2026-01-14 12:14 ` Ahmad Fatoum
2026-01-15 13:26 ` Marco Felsch
2026-01-15 14:01 ` Ahmad Fatoum
2026-01-15 15:27 ` Ahmad Fatoum
2026-01-18 19:09 ` Marco Felsch
2025-11-10 20:34 ` [PATCH 05/23] ARM: i.MX8M: cosmetic cleanup Marco Felsch
2026-01-14 12:04 ` Ahmad Fatoum
2025-11-10 20:34 ` [PATCH 06/23] ARM: i.MX8M: move BL32 setup into imx8m_tfa_start_bl31() Marco Felsch
2026-01-14 12:21 ` Ahmad Fatoum
2025-11-10 20:34 ` [PATCH 07/23] ARM: i.MX8M: imx8m_tfa_start_bl31() add support for bl33 and fdt Marco Felsch
2026-01-14 12:25 ` Ahmad Fatoum
2025-11-10 20:34 ` [PATCH 08/23] pbl: decomp: add pbl_dtbz_uncompress helper Marco Felsch
2026-01-14 12:28 ` Ahmad Fatoum
2026-01-18 18:11 ` Marco Felsch
2026-01-18 18:17 ` Marco Felsch
2025-11-10 20:34 ` [PATCH 09/23] pbl: fdt: add pbl_load_fdt helper Marco Felsch
2026-01-15 14:18 ` Ahmad Fatoum
2026-01-18 19:18 ` Marco Felsch
2025-11-10 20:34 ` [PATCH 10/23] ARM: i.MX: scratch: add FDT support Marco Felsch
2025-11-11 14:14 ` Sascha Hauer
2025-11-11 14:30 ` Ahmad Fatoum
2025-11-11 15:06 ` Marco Felsch
2025-11-10 20:34 ` [PATCH 11/23] ARM: i.MX8M: esdctl: drop ddrc base from imx8m_ddrc_sdram_size Marco Felsch
2026-01-15 13:08 ` Ahmad Fatoum
2025-11-10 20:34 ` [PATCH 12/23] ARM: i.MX8M: esdctl: export imx8m_ddrc_sdram_size() Marco Felsch
2026-01-15 13:09 ` Ahmad Fatoum
2025-11-10 20:34 ` [PATCH 13/23] ARM: i.MX8M: add support to pass BL3x bl_params Marco Felsch
2026-01-15 15:30 ` Ahmad Fatoum
2026-01-18 19:34 ` Marco Felsch
2025-11-10 20:34 ` [PATCH 14/23] ARM: i.MX: scratch: add OP-TEE FDTO support Marco Felsch
2026-01-15 14:47 ` Ahmad Fatoum
2026-01-18 18:27 ` Marco Felsch
2025-11-10 20:34 ` [PATCH 15/23] pbl: string: add strncmp Marco Felsch
2026-01-14 12:05 ` Ahmad Fatoum
2025-11-10 20:34 ` [PATCH 16/23] pbl: fdt: add fdt_copy_node helper Marco Felsch
2026-01-15 14:34 ` Ahmad Fatoum
2026-01-18 19:53 ` Marco Felsch
2025-11-10 20:34 ` [PATCH 17/23] handoff-data: Add BL32_DT_OVL entry Marco Felsch
2026-01-15 14:31 ` Ahmad Fatoum
2025-11-10 20:34 ` [PATCH 18/23] security: optee: add optee_extract_fdto helper Marco Felsch
2026-01-15 14:36 ` Ahmad Fatoum
2026-01-18 19:58 ` Marco Felsch
2025-11-10 20:34 ` [PATCH 19/23] security: optee: add helpers to apply OP-TEE FDTO Marco Felsch
2026-01-15 14:49 ` Ahmad Fatoum
2026-01-18 20:11 ` Marco Felsch
2025-11-10 20:35 ` [PATCH 20/23] ARM: i.MX8M: Add support to extract OP-TEE provided informations Marco Felsch
2025-11-17 9:15 ` Sascha Hauer
2026-01-15 14:50 ` Ahmad Fatoum
2026-01-15 15:19 ` Marco Felsch [this message]
2026-01-15 15:24 ` Ahmad Fatoum
2026-01-16 9:51 ` Marco Felsch
2026-01-18 20:26 ` Marco Felsch
2025-11-10 20:35 ` [PATCH 21/23] of: base: register optional OP-TEE overlay Marco Felsch
2026-01-15 14:51 ` Ahmad Fatoum
2025-11-10 20:35 ` [PATCH 22/23] pbl: add support to disable/remove the /secure-chosen/stdout-path Marco Felsch
2026-01-14 13:17 ` Ahmad Fatoum
2025-11-10 20:35 ` [PATCH 23/23] ARM: i.MX8M: remove /secure-chosen/stdout-path if requested Marco Felsch
2026-01-15 14:17 ` Ahmad Fatoum
2026-01-16 8:15 ` [PATCH 00/23] Improve OP-TEE handling Sascha Hauer
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=20260115151953.ufmzak6ax57q37sy@pengutronix.de \
--to=m.felsch@pengutronix.de \
--cc=a.fatoum@pengutronix.de \
--cc=barebox@lists.infradead.org \
/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