[PATCH v4 09/22] passage: arm: Accept a passage from the previous phase
Tom Rini
trini at konsulko.com
Wed May 14 23:58:21 CEST 2025
On Sat, May 10, 2025 at 03:42:07PM +0200, Simon Glass wrote:
> Accept a bloblist and control devicetree from a previous phase in
> registers 0 to 3, as documented in the Firmware Handoff
> specification[1].
>
> Note that there is currently a weak function called save_boot_params()
> which happens to save the same registers as are needed for this
> protocol. But it seems better to implement this feature as a first-class
> citizen, if for no other reason than that many boards have their own
> version of save_boot_params() which may not happen to save the required
> registers. A weak function is not a good basis for an API.
>
> [1] https://firmwarehandoff.github.io/firmware_handoff/main/index.html
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
> While some efforts were made to encourage Intel to adopt this
> specification, this has not yet been successful. However I do intend to
> use my proposed x86 handoff in U-Boot, once this series is in.
>
> Changes in v4:
> - Update commit message to indicate this can only be for ARM at present
> - Update commit message to mention why save_boot_params() is not used
>
> Changes in v3:
> - Add support for aarch64 also
> - Update registers to match the Firmware Handoff protocol
>
> Changes in v2:
> - Use three registers instead of two for the entry
>
> arch/arm/cpu/armv7/start.S | 10 +++++++++-
> arch/arm/cpu/armv8/start.S | 12 ++++++++++++
> arch/arm/lib/crt0.S | 6 ++++++
> arch/arm/lib/crt0_64.S | 6 ++++++
> 4 files changed, 33 insertions(+), 1 deletion(-)
This is what makes me think you aren't actually working on my feedback
about taking what we have in-tree, now, rather than just forward porting
your old series and deleting the current code.
We have save_boot_params doing exactly what it should today, including
saving off a standard passage and making what was saved available later,
in an intentional fashion. If, hypothetically, Pi needs to override
save_boot_param because a future new-firmware-blob does standard passage
but at run time we want to support both, that's a good thing.
With commit ea3348ebc215 ('Merge patch series "Handoff bloblist from
previous boot stage"') we already implement the specification in [1]. It
is not a "which happens to". It is intentional.
I guess the overall challenge here is that you want to do things which
are a superset of the firmware handoff spec itself?
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20250514/33a723da/attachment.sig>
More information about the U-Boot
mailing list