From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=pass header.i=@linaro.org header.s=google header.b=WS9RDZwV; spf=pass (domain: linaro.org, ip: 209.85.166.195, mailfrom: ard.biesheuvel@linaro.org) Received: from mail-it1-f195.google.com (mail-it1-f195.google.com [209.85.166.195]) by groups.io with SMTP; Thu, 02 May 2019 01:14:39 -0700 Received: by mail-it1-f195.google.com with SMTP id q19so1903958itk.3 for ; Thu, 02 May 2019 01:14:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=dgl0zy8TtJzNaRGMalx7Nhcm+9K7NzQTFxxDMOCJFxo=; b=WS9RDZwVe3aua1CPEvtJvwzLB15j1Z/POWqbJEKz4b2/uOnF5A5uAeZOcq6WKuxxMj buAmUW6ao5bB8OU4EAlt0CGzIqFo9cl2qPKQZrDcbonLkx81mlNfqfdID6OQn6wMnrNx JgvxS1hbO8AahvCzmnvXGhSawwLu4IjNs2f5aY7kVWIYRdow/2T33OvZcfapkqsgPbpo UWax2XS6AGcP2xfOwClf/etUGxZVT/UbqhR6UiaTHq7+W2VKqYBuu16Uy1W6NExb2S50 Fi0yjeDSTD7YccGAw3QgaGvNp9aIWJsjyVIFIax3kqF14PcuJsZCpeUN852k+OgPKXrk SDWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=dgl0zy8TtJzNaRGMalx7Nhcm+9K7NzQTFxxDMOCJFxo=; b=jOZJpRJDIMZUP2rbHfnHIB+uki9fU/oNkZQlXjFcW4NFDabHJUy44X2XNrO1vHeH8o e5fxVwEXmowUJ40e/EeeVe8Mjt3gR+J80tx7YsRpM2NbGCJX/Y4mdYFB00jcqJrm7CoL SWHlZqdDLX3EIluldJZs+kVSBef1SNP+wOKq7QcG5qxR39yzB7td35nUPktflJ+O1naW iim6uFrLU2uDdb06bDKBkjqX5yh9bvWm6lDwKZrmWi4VzUgyV6oebwIHZAOOZwTmYFbr T4YEhTDmhJ3WF7cg0bQVlL9Qied9fpA3ohXuisLmXPV07bR5MSKVQ5vl/LHzhbBaYtg0 e6oQ== X-Gm-Message-State: APjAAAV9ZLyim+wyO9PaJydpr6cyi+MRWcwJTqkkc3AJ4R68z0q6iQL/ UQR7Bgs0poqEmXqkgxg9GjPkDLR3pH1v8nzXYOzBgA== X-Google-Smtp-Source: APXvYqy6duqmNWg2dJsCIvOWqEfPZ7S4Ple8QjPXocFaAqH6YdVv/gjCpQFRR+wZSOVKu+mMsMQVGVlhhVU+Yn606WI= X-Received: by 2002:a02:1dc7:: with SMTP id 190mr1461243jaj.62.1556784879122; Thu, 02 May 2019 01:14:39 -0700 (PDT) MIME-Version: 1.0 References: <20190501140146.33224-1-sami.mujawar@arm.com> In-Reply-To: <20190501140146.33224-1-sami.mujawar@arm.com> From: "Ard Biesheuvel" Date: Thu, 2 May 2019 10:14:27 +0200 Message-ID: Subject: Re: [PATCH v1 1/1] ArmPkg: Dispatch deferred images after EndOfDxe To: Sami Mujawar Cc: edk2-devel-groups-io , Leif Lindholm , Matteo Carlini , Stephanie Hughes-Fitt , nd Content-Type: text/plain; charset="UTF-8" On Wed, 1 May 2019 at 16:02, Sami Mujawar 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 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.
> + Copyright (c) 2014 - 2019, ARM Ltd. All rights reserved.
> Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.
> Copyright (c) 2016, Linaro Ltd. All rights reserved.
> > @@ -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)' > >