Re: [GIT PULL 0/2] EFI fixes for v4.11

From: Ingo Molnar
Date: Wed Apr 05 2017 - 06:26:54 EST



* Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx> wrote:

> On 5 April 2017 at 11:08, Bartlomiej Zolnierkiewicz
> <b.zolnierkie@xxxxxxxxxxx> wrote:
> >
> > Hi,
> >
> > On Tuesday, April 04, 2017 04:27:42 PM Ard Biesheuvel wrote:
> >> Hello all,
> >>
> >> Please pull these fixes for EFI framebuffer support on ARM/arm64 systems.
> >>
> >> The following changes since commit 822f5845f710e57d7e2df1fd1ee00d6e19d334fe:
> >>
> >> efi/esrt: Cleanup bad memory map log messages (2017-03-17 18:53:12 +0000)
> >>
> >> are available in the git repository at:
> >>
> >> git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git tags/efi-urgent
> >>
> >> for you to fetch changes up to e73c2811538bd36ec1340d01bafdc080af31914e:
> >>
> >> efifb: Avoid reconfiguration of BAR that covers the framebuffer (2017-04-04 15:56:43 +0100)
> >>
> >> ----------------------------------------------------------------
> >> Two fixes related to the EFI framebuffer driver:
> >> - Ignore Graphics Output Protocol (GOP) implementations that are marked as
> >> BLT-only -- the framebuffer base address is invalid in this case, and the
> >> Blt() method is not accessible to the kernel.
> >> - If the GOP framebuffer base address coincides with a memory BAR of a PCI
> >> device that has memory decoding enabled, claim the memory resource so that
> >> the PCI core will not attempt to move it later on.
> >>
> >> ----------------------------------------------------------------
> >> Ard Biesheuvel (1):
> >> efifb: Avoid reconfiguration of BAR that covers the framebuffer
> >
> > This patch breaks build if PCI support is not enabled:
> >
> > drivers/video/fbdev/efifb.c: In function âclaim_efifb_barâ:
> > drivers/video/fbdev/efifb.c:386:2: error: implicit declaration of function âpci_claim_resourceâ [-Werror=implicit-function-declaration]
> >
> > (x86 ifdefs are not enough, the patch should also check for PCI support)
> >
> > Also please cc: linux-fbdev mailing list & me on fbdev related patches.
> >
>
> Thanks for the report. The patch was tested successfully on an
> impressive list of configurations by kbuild test robot, but
> apparently, none of those has PCI disabled.
>
> Ingo, since you have queued this already, how would you like to
> proceed? I don't think we need anything beyond
>
> diff --git a/drivers/video/fbdev/efifb.c b/drivers/video/fbdev/efifb.c
> index 758960b6aec9..b827a8113e26 100644
> --- a/drivers/video/fbdev/efifb.c
> +++ b/drivers/video/fbdev/efifb.c
> @@ -364,7 +364,7 @@ static struct platform_driver efifb_driver = {
>
> builtin_platform_driver(efifb_driver);
>
> -#ifndef CONFIG_X86
> +#if defined(CONFIG_PCI) && !defined(CONFIG_X86)

I've rebased it all, it's still pretty fresh (two hours old) and the delta fix
would look pretty ugly in the urgent branch.

Thanks,

Ingo