On Tue, 5 May 2020 at 09:16, Ard Biesheuvel <ard.biesheu...@arm.com> wrote:

> On 5/4/20 8:34 PM, Andrei Warkentin wrote:
> > Hi Grant,
> >
> > Please also factor in requirements for how memory containing DT must be
> > described in the memory map (Ard mentioned using EfiACPIReclaimMemory).
> >
> > Maybe something like:
> >
> >   * Devicetree loaded at boot time must be contained in memory of type
> >     EfiACPIReclaimMemory.
> >
>
> Ack.
>
> Are there any alignment requirements? I think of 64KB pages OS.
Even though EfiACPIReclaimMemory  is not listed as having memory type
constraints
as  EfiACPIReclaimMemoryNVS in section 2.3, I wonder if architecture's last
level largest
page size alignment is of interest here.

> Not a strong position, but you may also want to put the foot down on
> > *when* the exposed Devicetree blob must be consistent (consistent with
> > some firmware setting changes). Perhaps thats at ReadyToBoot or
> > ExitBootServices.
>
> ReadyToBoot is a PI concept, not a UEFI concept. And EBS() is way too
> late. But I don't think there is any need to specify this: the firmware
> needs to make the DT available before calling the OS loader - I don't
> think we need to spell that out.
>
> But this brings something else to mind: in the past, we had to push back
> on efforts to upstream Linux changes to install the DTB back into the
> configuration table, so that at EBS() time, the firmware would see the
> modified version. *That* is something we should rule out:
>
> """
> Firmware must not consume device tree descriptions installed as
> configuration tables under this GUID by the OS loader or other boot
> stages that are not part of the system firmware itself
> """
>
>
> > I don't think the exact choice matters as long as it's
> > called out, so that an OS loader can be coded to fetch the blob exactly
> > once at the right time, and be guaranteed to work on any EBBR-compliant
> > implementation (IIRC ACPI has the same problem, but you have the luxury
> > of having to worry about that).
> >
> > You might want to expand the GUID text to be something like:
> >
> > The following GUID must be used to describe the flattened Devicetree
> > blob (dtb) in the EFI_CONFIGURATION_TABLE structure referenced by the
> > EFI System Table.
> >
> > A
> > ------------------------------------------------------------------------
> > *From:* Grant Likely <grant.lik...@arm.com>
> > *Sent:* Monday, May 4, 2020 12:20 PM
> > *To:* boot-architecture@lists.linaro.org
> > <boot-architecture@lists.linaro.org>
> > *Cc:* Grant Likely <grant.lik...@arm.com>; Andrei Warkentin
> > <awarken...@vmware.com>; Francois Ozog <francois.o...@linaro.org>
> > *Subject:* [EBBR PATCH] Add EFI GUID for device tree blob
> > None of the relevent specs (EFI, DT, EBBR) specify the GUID for passing
> > a DTB. Add it to the EBBR document so it is documented somewhere
> > relevant.
> >
> > Fixes: #45
> > Cc: Andrei Warkentin <awarken...@vmware.com>
> > Cc: Francois Ozog <francois.o...@linaro.org>
> > Signed-off-by: Grant Likely <grant.lik...@arm.com>
> > ---
> >   source/chapter2-uefi.rst | 10 ++++++++++
> >   1 file changed, 10 insertions(+)
> >
> > diff --git a/source/chapter2-uefi.rst b/source/chapter2-uefi.rst
> > index f6a5802..cf2f652 100644
> > --- a/source/chapter2-uefi.rst
> > +++ b/source/chapter2-uefi.rst
> > @@ -86,6 +86,16 @@ tables.
> >   - An Advanced Configuration and Power Interface [ACPI]_ table, or
> >   - a Devicetree [DTSPEC]_ system description
> >
> > +A Devicetree system description MUST be provided in Flattened
> > Devicetree (DTB)
> > +format version 17 or higher.
> > +The following GUID must be used in the EFT system table to identify the
> > DTB.
> > +
> > +.. code-block:: c
> > +
> > +    #define EFI_DTB_GUID \
> > +         EFI_GUID(0xb1b621d5, 0xf19c, 0x41a5, \
> > +                  0x83, 0x0b, 0xd9, 0x15, 0x2c, 0x69, 0xaa, 0xe0)
> > +
> >   As stated above, EBBR systems must not provide both ACPI and Devicetree
> >   tables at the same time.
> >   Systems that support both interfaces must provide a configuration
> > --
> > 2.20.1
> >
> > IMPORTANT NOTICE: The contents of this email and any attachments are
> > confidential and may also be privileged. If you are not the intended
> > recipient, please notify the sender immediately and do not disclose the
> > contents to any other person, use it for any purpose, or store or copy
> > the information in any medium. Thank you.
>
>

-- 
François-Frédéric Ozog | *Director Linaro Edge & Fog Computing Group*
T: +33.67221.6485
francois.o...@linaro.org | Skype: ffozog
_______________________________________________
boot-architecture mailing list
boot-architecture@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/boot-architecture

Reply via email to