On Sat, Nov 12, 2016 at 12:03:33PM +0300, Andrei Borzenkov wrote:
> 29.02.2016 02:22, Alexander Graf ??????????:
> > Searching for a device tree that EFI passes to us via configuration tables
> > is nothing architecture specific. Move it into generic code.
> >
> > Signed-off-by: Alexander Graf <ag...@suse.de>
> > ---
> >  grub-core/kern/efi/init.c    | 22 ++++++++++++++++++++++
> >  grub-core/loader/arm64/fdt.c | 24 +-----------------------
> >  include/grub/efi/efi.h       |  2 ++
> >  3 files changed, 25 insertions(+), 23 deletions(-)
> >
> > diff --git a/grub-core/kern/efi/init.c b/grub-core/kern/efi/init.c
> > index e9c85de..fb90ecd 100644
> > --- a/grub-core/kern/efi/init.c
> > +++ b/grub-core/kern/efi/init.c
> > @@ -72,6 +72,28 @@ grub_machine_get_bootlocation (char **device, char 
> > **path)
> >      }
> >  }
> >
> > +void *
> > +grub_efi_get_firmware_fdt (void)
> > +{
> > +  grub_efi_configuration_table_t *tables;
> > +  grub_efi_guid_t fdt_guid = GRUB_EFI_DEVICE_TREE_GUID;
> > +  void *firmware_fdt = NULL;
> > +  unsigned int i;
> > +
> > +  /* Look for FDT in UEFI config tables. */
> > +  tables = grub_efi_system_table->configuration_table;
> > +
> > +  for (i = 0; i < grub_efi_system_table->num_table_entries; i++)
> > +    if (grub_memcmp (&tables[i].vendor_guid, &fdt_guid, sizeof (fdt_guid)) 
> > == 0)
> > +      {
> > +   firmware_fdt = tables[i].vendor_table;
> > +   grub_dprintf ("linux", "found registered FDT @ %p\n", firmware_fdt);
> > +   break;
> > +      }
> > +
> > +  return firmware_fdt;
> > +}
> > +
>
> Is it relevant for x86? I cannot even find anything related to FDT or
> "device tree" in UEFI spec, it falls under vendor extensions. What other
> use it has except in Linux loader?
>
> I really fail to see why it should be moved into core until at least one
> more non-trivial caller is present.

Hmmm... It looks that I was too fast. TBH, I can agree to some extend.
Should we revert this patch or just #ifdef relevant code? Revert seems
better for me.

Daniel

_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to