Re: [PATCH 2/4] efi/libstub: detect panel-id
From: Ard Biesheuvel
Date: Tue Jul 02 2019 - 20:44:09 EST
On Tue, 2 Jul 2019 at 22:26, Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx> wrote:
>
> On Sun, 30 Jun 2019 at 22:36, Rob Clark <robdclark@xxxxxxxxx> wrote:
> >
> > From: Rob Clark <robdclark@xxxxxxxxxxxx>
> >
> > On snapdragon aarch64 laptops, a 'UEFIDisplayInfo' variable is provided
> > to communicate some information about the display. Crutially it has the
> > panel-id, so the appropriate panel driver can be selected. Read this
> > out and stash in /chosen/panel-id so that display driver can use it to
> > pick the appropriate panel.
> >
> > Signed-off-by: Rob Clark <robdclark@xxxxxxxxxxxx>
>
> Hi Rob,
>
> I understand why you are doing this, but this *really* belongs elsewhere.
>
> So we are dealing with a platform that violates the UEFI spec, since
> it does not bother to implement variable services at runtime (because
> MS let the vendor get away with this).
>
To clarify, the above remark applies to populating the DT from the OS
rather than from the firmware.
> First of all, to pass data between the EFI stub and the OS proper, we
> should use a configuration table rather than a DT property, since the
> former is ACPI/DT agnostic. Also, I'd like the consumer of the data to
> actually interpret it, i.e., just dump the whole opaque thing into a
> config table in the stub, and do the parsing in the OS proper.
>
> However, I am not thrilled at adding code to the stub that
> unconditionally looks for some variable with some magic name on all
> ARM/arm64 EFI systems, so this will need to live under a Kconfig
> option that depends on ARM64 (and does not default to y)
>
... but saving variables at boot time for consumption at runtime is
something that we will likely see more of in the future.