Firmware Handoff for DT Overlay created by OP-TEE?
Ahmad Fatoum
a.fatoum at pengutronix.de
Thu Jun 12 03:44:20 PDT 2025
Hello Manish,
On 6/12/25 12:13, Manish Pandey2 wrote:
> Thanks Ahmad for reaching out!
Thanks for the quick response.
> There is a PR [1] on the Firmware Handoff specification that is still
> under discussion. Could you take a look and see if it could accommodate
> your use case?
Cool, thanks for pointing it out. I will check it out in detail.
> To confirm my understanding, would the desired flow be something like:
>
> 1.
> *BL31 passes a read-only DT* to OP-TEE via the Transfer List (TL)
DT comes from BL2 originally, but yes, BL31 passes it along.
> 2.
> *OP-TEE consumes* the DT, adds memory reservations via a *DTO*, and
> appends this DTO to the TL
My original thought was that BL2 (via BL31) allocates some memory and
passes it via transfer list for OP-TEE to fill out.
This allows reclaiming the space used by the overlay, which would
otherwise not be possible:
- If OP-TEE uses arbitrary memory, it may turn out to be used
otherwise
- If OP-TEE uses its own memory that it reserves, the space is
never reclaimed as it doesn't know when it's no longer needed
> 3.
> *BL31 then forwards* the updated TL to BL33
Right.
>
> Does that match what you had in mind?
Thanks,
Ahmad
>
>
> [1]: https://github.com/FirmwareHandoff/firmware_handoff/pull/74
> <https://github.com/FirmwareHandoff/firmware_handoff/pull/74>
>
> ------------------------------------------------------------------------
> *From:* Ahmad Fatoum <a.fatoum at pengutronix.de>
> *Sent:* 11 June 2025 19:09
> *To:* Manish Pandey2 <Manish.Pandey2 at arm.com>
> *Cc:* op-tee at lists.trustedfirmware.org <op-
> tee at lists.trustedfirmware.org>; BAREBOX <barebox at lists.infradead.org>;
> rouven.czerwinski at linaro.org <rouven.czerwinski at linaro.org>; Michael
> Tretter <m.tretter at pengutronix.de>; kernel at pengutronix.de
> <kernel at pengutronix.de>
> *Subject:* Firmware Handoff for DT Overlay created by OP-TEE?
>
> Hello Manish,
>
> In your recent talk[1] at LinaroConnect about the Firmware Handoff
> specification, you were asking about what other use cases it could
> address for OP-TEE.
>
> We ran into a possible use case that we would like to share:
>
> BL2 can pass a DT to OP-TEE, which it would use to discover memory and
> to fix up with memory reservations covering the memory it carves out for
> itself.
>
> OP-TEE also supports passing along the reservations as a device tree
> overlay. AFAICS, there is no way currently to have both: A DT for OP-TEE
> to probe hardware from and a way to pass the normal world a device tree
> overlay in return.
>
> I think this could be neatly addressed with Firmware Handoff and would
> be a motivation for us to implement support in barebox BL2/BL33 to take
> advantage of this. The current way is suboptimal as we would prefer the
> DT passed to OP-TEE to be read-only. This avoids either having to copy
> it or to pad it sufficiently in anticipation of it growing with the
> addition of the new nodes.
>
> [1]: https://www.youtube.com/watch?v=RxU798h8aiE <https://
> www.youtube.com/watch?v=RxU798h8aiE>
>
> Cheers,
> Ahmad
>
> --
> Pengutronix e.K. | |
> Steuerwalder Str. 21 | http://www.pengutronix.de/ <http://
> www.pengutronix.de/> |
> 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
> Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
>
--
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 |
More information about the barebox
mailing list