All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Glass <sjg@chromium.org>
To: "François Ozog" <francois.ozog@linaro.org>
Cc: Julius Werner <jwerner@chromium.org>,
	Manish Pandey2 <Manish.Pandey2@arm.com>,
	 Daniel Thompson <daniel.thompson@linaro.org>,
	Ed Stuber <edstuber@amperecomputing.com>,
	 Boot Architecture Mailman List
	<boot-architecture@lists.linaro.org>,
	undefined <loic.pallardy@st.com>,
	 Harb Abdulhamid OS <abdulhamid@os.amperecomputing.com>,
	 Arjun Khare <akhare@amperecomputing.com>,
	U-Boot Mailing List <u-boot@lists.denx.de>,
	 "tf-a@lists.trustedfirmware.org"
	<tf-a@lists.trustedfirmware.org>,
	"Paul Isaac's" <paul.isaacs@linaro.org>,
	 Ron Minnich <rminnich@google.com>,
	Moe Ammar <moe@amperecomputing.com>
Subject: Re: [TF-A] Proposal: TF-A to adopt hand-off blocks (HOBs) for information passing between boot stages
Date: Thu, 15 Jul 2021 09:03:54 -0600	[thread overview]
Message-ID: <CAPnjgZ1A_osN9kmfQtanAD_FxAeZsEkA8LJY269+XwsVFToP8w@mail.gmail.com> (raw)
In-Reply-To: <CAHFG_=X5KiOFoBZyEDYoPKx97gRaVZ5+aJBk3kYht43p79ADxA@mail.gmail.com>

Hi François,

On Thu, 15 Jul 2021 at 08:25, François Ozog <francois.ozog@linaro.org>
wrote:

>
>
> On Sat, 10 Jul 2021 at 01:07, Julius Werner <jwerner@chromium.org> wrote:
>
>> > - "bloblist" is a general term for concept of linked list and it's not
>> exactly U-boot implementation. The proposed solution will cause some degree
>> of changes in all the participating projects. For backward compatibility
>> issue, we have already though about it and proposed to have build configs
>> which will be enabled by platform integrators.
>>
>> Okay, let's gather the requirements and then decide how the existing
>> system needs to be expanded to meet them. Please keep me in the loop
>> on those discussions.
>>
>> > > U-Boot has an established mechanism which is used in particular on
>> all chrome
>> > > books in both x86 and Arm environments.  I have the impression that
>> > > U-Boot is the typical BL33 so I would import the mechanism into TFA,
>> > > not the other way round.
>>
>> There has been no Chromebook (x86 or Arm) shipping with U-Boot since
>> 2013 (before TF-A existed). In fact, Chromebooks are all running
>> coreboot today and using the bl_aux_params mechanism (it's 3 SoC
>> vendors, more than 3 SoCs, but the parameter code is shared at the
>> vendor level), and one of my concerns here is trying to limit
>> disruption to those existing setups. I don't have enough data to say
>> what the "typical" boot flow among all TF-A devices in existence is,
>> but at least for the millions of Chromebooks out there it is coreboot
>> + TF-A, not U-Boot.
>>
> My bad! I candidly inferred from Chromebook reference in U-Boot and
> Simon's VBE proposal that U-Boot was used.
>

This is a bit off-topic, but it is somewhat in the reverse. U-Boot's
verified boot (2014 I think) uses the crypto from Chromium OS (which I
think came from Android at some point). VBE is an attempt to provide a
standard boot flow for U-Boot devices and is again heavily influenced by
Chromium OS. U-Boot does ship on most Chromebooks (oddly enough, not the
ARM ones!) but just as an alternate bootloader and is not used in the
verified-boot flow. I won't get into the details of how the Chroimum OS
replacement came about, as that is way off topic!

To me, bl_aux_params is a pretty limited. I am looking here:
https://github.com/ARM-software/arm-trusted-firmware/blob/master/include/export/lib/bl_aux_params/bl_aux_params_exp.h

Is that the right place?

There is not a huge amount of code in TF-A that uses it (mediatek and
rockchip?) so I don't see a problem with updating it, given the benefits of
interoperability.

In fact, having taken a bit of a look, my view is that U-Boot's bloblist is
a much better starting point for this effort:

- fuller implementation with more features
- has comments / more documentation
- easily supports everything in one block instead of a linked list (easier
to allocate)
- avoids 64-bit tags/size which seem quite unnecessary
- has unit tests

plus some minor points I won't mention. So I think it is worth the pain to
switch TF-A over.

Perhaps we can gather the requirements that are needed for this? So far I
am aware of:

- devicetree bob tag
- vendor-private tag area
- ability to link to another bloblist (do we really need this?)

Regards,
Simon

  reply	other threads:[~2021-07-15 15:04 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <010001785912437d-ab3ef3d5-960c-4f85-bd2c-7f7853900e7a-000000@email.amazonses.com>
     [not found] ` <CAHFG_=W8LGwtEMW=qrki4DixTtatc4tcdHM5Gekx2eoRHXe-Ng@mail.gmail.com>
     [not found]   ` <CAPnjgZ1HK+Wnw0p+6bZddeMM804sxEmU_BJW8nAu64GG4D-9MA@mail.gmail.com>
     [not found]     ` <010001785e96cf83-06ded054-1d8b-47f3-8096-f205a92305f0-000000@email.amazonses.com>
     [not found]       ` <CAHFG_=WueeAuVB9Z2kg635zEF8skCVAwENU52BoEiu9BGQGMzg@mail.gmail.com>
     [not found]         ` <MW2PR0102MB345115D85F03D5863BB3EDB8EE649@MW2PR0102MB3451.prod.exchangelabs.com>
2021-03-24 22:35           ` [TF-A] Proposal: TF-A to adopt hand-off blocks (HOBs) for information passing between boot stages Simon Glass
     [not found]           ` <0100017866b46da2-7ac1b1ae-03f2-4048-81f8-bd38fb59b99f-000000@email.amazonses.com>
2021-03-25  2:42             ` Julius Werner
     [not found]             ` <010001786743f45c-823a9973-7ac5-4f32-bd9d-a5c244d22b31-000000@email.amazonses.com>
2021-03-26 14:58               ` raghu.ncstate at icloud.com
2021-03-29  7:42                 ` Simon Glass
2021-03-29 10:18                   ` Grant Likely
2021-03-29 22:24                     ` Simon Glass
2021-03-29 23:48                 ` Julius Werner
2021-03-30 19:01                   ` raghu.ncstate at icloud.com
     [not found]             ` <010001786743a2ac-3d2da6df-c6f2-4e19-acaa-628ff7d466c2-000000@email.amazonses.com>
2021-04-08 11:55               ` Manish Pandey2
2021-04-08 17:24                 ` Harb Abdulhamid OS
2021-04-08 18:19                   ` Simon Glass
2021-04-08 18:58                     ` Mark Kettenis
2021-04-12 15:16                       ` François Ozog
2021-04-08 21:22                   ` Julius Werner
     [not found]               ` <01000178b1570317-d1af5a40-d575-49ef-9b91-06abe8d04f4b-000000@email.amazonses.com>
2021-04-08 15:50                 ` François Ozog
2021-04-30 12:13                   ` Manish Pandey2
2021-05-05 17:42                     ` Harb Abdulhamid OS
2021-05-05 22:49                       ` Simon Glass
     [not found]                       ` <010001793ebb08a4-29440b1d-778d-4a80-8def-619c2946e275-000000@email.amazonses.com>
2021-05-14 12:29                         ` Okash Khawaja
     [not found]                         ` <010001796adacdd6-3f239ac5-27bb-4c79-a878-30592929b893-000000@email.amazonses.com>
2021-05-16 10:18                           ` Joanna Farley
     [not found]                           ` <0100017974aff4fb-0af45782-0b60-4724-b300-822f8fe4b799-000000@email.amazonses.com>
2021-05-19  1:57                             ` Madhukar Pappireddy
     [not found]                             ` <0100017982591630-15bf1d32-8f0b-4b2a-bb4d-a2ba39760820-000000@email.amazonses.com>
2021-05-19  2:50                               ` Madhukar Pappireddy
2021-05-19 14:33                                 ` Joanna Farley
2021-05-19 14:41                                   ` Joanna Farley
2021-06-02 14:29                                 ` Joanna Farley
2021-06-02 15:26                                   ` Joanna Farley
2021-06-10 21:57                                     ` Manish Pandey2
2021-06-11 11:51                                       ` François Ozog
2021-06-17 19:37                                         ` Simon Glass
2021-06-17 19:47                                           ` François Ozog
2021-07-08 11:18                                             ` Manish Pandey2
2021-07-08 11:48                                               ` François Ozog
     [not found]                                             ` <0100017a8648f3d5-98a3bce6-b2dc-48cb-84e4-c292bcef5622-000000@email.amazonses.com>
2021-07-08 21:56                                               ` Julius Werner
2021-07-08 22:31                                                 ` Simon Glass
2021-07-09  1:08                                                   ` Julius Werner
2021-07-09  7:05                                                     ` François Ozog
2021-07-09 10:07                                                       ` Daniel Thompson
2021-07-09 15:43                                                         ` Manish Pandey2
2021-07-09 23:06                                                           ` Julius Werner
2021-07-15 14:25                                                             ` François Ozog
2021-07-15 15:03                                                               ` Simon Glass [this message]
2021-07-16  2:23                                                                 ` Julius Werner
     [not found]                                           ` <0100017a1b8bea04-71a338d9-55ac-4163-80c9-2c350d62d425-000000@email.amazonses.com>
2021-06-17 23:45                                             ` raghu.ncstate
2021-06-18 14:43                                               ` Ron Minnich
2021-06-18 16:45                                               ` Simon Glass
2021-06-18 17:17                                               ` Tom Rini
2021-06-21  9:57                                                 ` François Ozog
2021-05-19 21:50                               ` Jeremy Linton
     [not found]                               ` <01000179869c5dac-96846caa-3f3d-4987-8d70-6843f9e46090-000000@email.amazonses.com>
2021-05-20  5:34                                 ` François Ozog
2021-05-20 10:34                               ` Julian Hall
2021-05-20 16:42                                 ` Simon Glass
2021-06-21 10:32                                   ` Alexander Graf
2021-06-21 10:38                                     ` François Ozog
     [not found]                             ` <010001798258ec0b-a221c5f8-618a-456c-9068-b7cc44aa9dec-000000@email.amazonses.com>
2021-05-20  5:45                               ` François Ozog

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=CAPnjgZ1A_osN9kmfQtanAD_FxAeZsEkA8LJY269+XwsVFToP8w@mail.gmail.com \
    --to=sjg@chromium.org \
    --cc=Manish.Pandey2@arm.com \
    --cc=abdulhamid@os.amperecomputing.com \
    --cc=akhare@amperecomputing.com \
    --cc=boot-architecture@lists.linaro.org \
    --cc=daniel.thompson@linaro.org \
    --cc=edstuber@amperecomputing.com \
    --cc=francois.ozog@linaro.org \
    --cc=jwerner@chromium.org \
    --cc=loic.pallardy@st.com \
    --cc=moe@amperecomputing.com \
    --cc=paul.isaacs@linaro.org \
    --cc=rminnich@google.com \
    --cc=tf-a@lists.trustedfirmware.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.