public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Ard Biesheuvel" <ard.biesheuvel@linaro.org>
To: Sami Mujawar <sami.mujawar@arm.com>
Cc: edk2-devel-groups-io <devel@edk2.groups.io>,
	Leif Lindholm <leif.lindholm@linaro.org>,
	 Matteo Carlini <Matteo.Carlini@arm.com>,
	 Stephanie Hughes-Fitt <Stephanie.Hughes-Fitt@arm.com>,
	nd <nd@arm.com>
Subject: Re: [PATCH v1 1/1] ArmPkg: Dispatch deferred images after EndOfDxe
Date: Thu, 2 May 2019 10:14:27 +0200	[thread overview]
Message-ID: <CAKv+Gu92gPzGvGZ3M9B52q1TOAvnBjgxpvykbAZPevMULkcF6w@mail.gmail.com> (raw)
In-Reply-To: <20190501140146.33224-1-sami.mujawar@arm.com>

On Wed, 1 May 2019 at 16:02, Sami Mujawar <sami.mujawar@arm.com> wrote:
>
> Third party driver images loaded from Option ROM get queued
> for execution after EndOfDxe. These queued images need to be
> dispatched from the PlatformBootManagerLib.
>
> Since the queued images were not dispatched, the PCI Option
> ROM drivers were not getting loaded on Juno. Therefore,
> add call to EfiBootManagerDispatchDeferredImages() for
> dispatching deferred images from PlatformBootManagerLib.
>
> Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>

Hello Sami,

The patch looks correct to me, but I am puzzled why this is broken on
Juno but not on SynQuacer or Overdrive.

It might be that the PCI hierarchy is enumerated before EndOfDxe on
Juno, and after on the other platforms. Any clue?


> ---
>
> The changes can be seen at https://github.com/samimujawar/edk2/tree/527_option_rom_loading_v1
>
>  ArmPkg/Library/PlatformBootManagerLib/PlatformBm.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/ArmPkg/Library/PlatformBootManagerLib/PlatformBm.c b/ArmPkg/Library/PlatformBootManagerLib/PlatformBm.c
> index 0f91692c1a5ee6104bfef8545e4f436e53042178..71b857b5ba884c27ab870f6b75fa3e34d48e6060 100644
> --- a/ArmPkg/Library/PlatformBootManagerLib/PlatformBm.c
> +++ b/ArmPkg/Library/PlatformBootManagerLib/PlatformBm.c
> @@ -2,7 +2,7 @@
>    Implementation for PlatformBootManagerLib library class interfaces.
>
>    Copyright (C) 2015-2016, Red Hat, Inc.
> -  Copyright (c) 2014, ARM Ltd. All rights reserved.<BR>
> +  Copyright (c) 2014 - 2019, ARM Ltd. All rights reserved.<BR>
>    Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>
>    Copyright (c) 2016, Linaro Ltd. All rights reserved.<BR>
>
> @@ -554,6 +554,11 @@ PlatformBootManagerBeforeConsole (
>    EfiEventGroupSignal (&gEfiEndOfDxeEventGroupGuid);
>
>    //
> +  // Dispatch deferred images after EndOfDxe event.
> +  //
> +  EfiBootManagerDispatchDeferredImages ();
> +
> +  //
>    // Locate the PCI root bridges and make the PCI bus driver connect each,
>    // non-recursively. This will produce a number of child handles with PciIo on
>    // them.
> --
> 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
>
>

  reply	other threads:[~2019-05-02  8:14 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-01 14:01 [PATCH v1 1/1] ArmPkg: Dispatch deferred images after EndOfDxe Sami Mujawar
2019-05-02  8:14 ` Ard Biesheuvel [this message]
2019-12-05 20:25 ` Ard Biesheuvel
2019-12-05 23:54   ` [edk2-devel] " Laszlo Ersek
2019-12-06  0:04     ` Laszlo Ersek
2019-12-06 10:02       ` Ard Biesheuvel
2019-12-06 10:33         ` Laszlo Ersek
2019-12-06 11:01           ` Ard Biesheuvel
2019-12-06  0:07     ` Laszlo Ersek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAKv+Gu92gPzGvGZ3M9B52q1TOAvnBjgxpvykbAZPevMULkcF6w@mail.gmail.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox