On Wed, Nov 8, 2023 at 5:38 AM Ard Biesheuvel <ardb@xxxxxxxxxx> wrote: > > On Tue, 7 Nov 2023 at 19:07, Rob Herring <robh@xxxxxxxxxx> wrote: > > > > > > All of this: > > > > > > On Mon, 16 Oct 2023 at 15:54, Simon Glass <sjg@xxxxxxxxxxxx> wrote: > > > > > > > > It is not specific to EDK2. Imagine this boot sequence: > > > > > > > > - Platform Init (U-Boot) starts up > > > > - U-Boot uses its platform knowledge to sets some ACPI tables and put > > > > various things in memory > > > > - U-Boot sets up some runtime code and data for the OS > > > > - U-Boot jumps to the Tianocore payload ** > > > > - Payload (Tianocore) wants to know where the ACPI tables are, for example > > > > - Tianocore needs to provide boot services to the OS, so needs to know > > > > the memory map, etc. > > > > > > > > ** At this point we want to use DT to pass the required information. > > > > > > > > Of course, Platform Init could be coreboot or Tianocore or some > > > > strange private binary. Payload could be U-Boot or something else. > > > > That is the point of this effort, to build interoperability. > > > > [...] > > > > > > Perhaps the problem here is that Linux has tied itself up in knots > > > > with its EFI stuff and DT fixups and what-not. But this is not that. > > > > It is a simple handoff between two pieces of firmware, Platform Init > > > > and Payload. It has nothing to do with the OS. With Tianocore they are > > > > typically combined, but with this usage they are split, and we can > > > > swap out one project for another on either side of the DT interface. > > > > Is perhaps the clearest description of the problem you want to solve. > > It's clearly related to EFI though not the interface to the OS. IIRC, > > "platform init" and "payload" are terms in the UEFI spec, right? > > No they are not. This is from the universal payload specification that > is being drafted here > > https://universalpayload.github.io/spec/index.html > > but the UEFI specification does not use this terminology. Then I'm confused as to what this is: https://uefi.org/specs/PI/1.8/index.html Rob