[PATCH] efi: sysfb_efi: fix build when EFI is not set

Ard Biesheuvel ardb at kernel.org
Wed Jul 28 08:50:32 UTC 2021


On Wed, 28 Jul 2021 at 10:39, Geert Uytterhoeven <geert at linux-m68k.org> wrote:
>
> Hi Randy,
>
> On Tue, Jul 27, 2021 at 7:06 AM Randy Dunlap <rdunlap at infradead.org> wrote:
> > When # CONFIG_EFI is not set, there are 2 definitions of
> > sysfb_apply_efi_quirks(). The stub from sysfb.h should be used
> > and the __init function from sysfb_efi.c should not be used.
> >
> > ../drivers/firmware/efi/sysfb_efi.c:337:13: error: redefinition of ‘sysfb_apply_efi_quirks’
> >  __init void sysfb_apply_efi_quirks(struct platform_device *pd)
> >              ^~~~~~~~~~~~~~~~~~~~~~
> > In file included from ../drivers/firmware/efi/sysfb_efi.c:26:0:
> > ../include/linux/sysfb.h:65:20: note: previous definition of ‘sysfb_apply_efi_quirks’ was here
> >  static inline void sysfb_apply_efi_quirks(struct platform_device *pd)
> >                     ^~~~~~~~~~~~~~~~~~~~~~
> >
> > Signed-off-by: Randy Dunlap <rdunlap at infradead.org>
>
> Thanks for your patch!
>
> > --- linext-20210726.orig/drivers/firmware/efi/sysfb_efi.c
> > +++ linext-20210726/drivers/firmware/efi/sysfb_efi.c
> > @@ -332,6 +332,7 @@ static const struct fwnode_operations ef
> >         .add_links = efifb_add_links,
> >  };
> >
> > +#ifdef CONFIG_EFI
> >  static struct fwnode_handle efifb_fwnode;
> >
> >  __init void sysfb_apply_efi_quirks(struct platform_device *pd)
> > @@ -354,3 +355,4 @@ __init void sysfb_apply_efi_quirks(struc
> >                 pd->dev.fwnode = &efifb_fwnode;
> >         }
> >  }
> > +#endif
>
> How come you enter drivers/firmware/efi/ without CONFIG_EFI?
>
> Oh:
>
> drivers/firmware/Makefile:obj-$(CONFIG_EFI)             += efi/
> drivers/firmware/Makefile:obj-$(CONFIG_UEFI_CPER)               += efi/
>
> Looks like UEFI_CPER is not related to EFI at all (it's not set in
> my arm64 config which has CONFIG_EFI=y). Perhaps it should be moved
> to drivers/acpi/ instead?
>

I think we should move this into drivers/firmware/cper/ instead, or
simply into drivers/firmware/


More information about the dri-devel mailing list