Hi
I am a little concern on this as well.

If today, there is a POC require skipping PciEnumerationComplete.
There might be the other POC tomorrow to skip ReadyToBoot
Then another POC to skip EventExitBootServices.

We will be exhausted to add POC to skip each separately.

Can this POC handle all 3 event together? Or not handle 3 event completely?


Thank you
Yao Jiewen

From: Dong, Guo
Sent: Tuesday, October 18, 2016 12:04 PM
To: Mudusuru, Giri P <giri.p.mudus...@intel.com>; edk2-devel@lists.01.org
Cc: Yao, Jiewen <jiewen....@intel.com>; Ma, Maurice <maurice...@intel.com>; 
Yarlagadda, Satya P <satya.p.yarlaga...@intel.com>
Subject: RE: [edk2] [PATCH] IntelFsp2WrapperPkg: Add a PCD to control if 
signaling first event.


Hi Giri,

Thank you for the comment.

In our POC implementation, Coreboot will notify FSP EnumerationComplete.  And 
in UEFI payload, the other 2 FSP notifications will be called from 
FspWrapperNotifyDxe.

Thanks,
Guo

-----Original Message-----
From: Mudusuru, Giri P
Sent: Monday, October 17, 2016 8:32 PM
To: Dong, Guo <guo.d...@intel.com<mailto:guo.d...@intel.com>>; 
edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org>
Cc: Yao, Jiewen <jiewen....@intel.com<mailto:jiewen....@intel.com>>; Ma, 
Maurice <maurice...@intel.com<mailto:maurice...@intel.com>>; Yarlagadda, Satya 
P <satya.p.yarlaga...@intel.com<mailto:satya.p.yarlaga...@intel.com>>
Subject: RE: [edk2] [PATCH] IntelFsp2WrapperPkg: Add a PCD to control if 
signaling first event.

Hello Guo,
FSP wrapper and Coreboot are bootloaders consuming FSP binary.

FSP must get called Post PCI bus enumeration to do the required silicon 
initialization. Why do we need a PCD to skip it?

Thanks,
-Giri

> -----Original Message-----
> From: Dong, Guo
> Sent: Monday, October 17, 2016 3:53 PM
> To: edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org>
> Cc: Yao, Jiewen <jiewen....@intel.com<mailto:jiewen....@intel.com>>; 
> Mudusuru, Giri P
> <giri.p.mudus...@intel.com<mailto:giri.p.mudus...@intel.com>>; Dong, Guo 
> <guo.d...@intel.com<mailto:guo.d...@intel.com>>
> Subject: [edk2] [PATCH] IntelFsp2WrapperPkg: Add a PCD to control if
> signaling first event.
>
> PciEnumerationComplete might be signaled to FSP in Coreboot. Add a PCD
> PcdNotifyPciEnumerationComplete so FspWrapperNotifyDxe driver could be
> used in this case.
>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: gdong1 <guo.d...@intel.com<mailto:guo.d...@intel.com>>
> ---
>  .../FspWrapperNotifyDxe/FspWrapperNotifyDxe.c          | 18 
> ++++++++++--------
>  .../FspWrapperNotifyDxe/FspWrapperNotifyDxe.inf        |  3 ++-
>  IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dec            |  5 +++++
>  3 files changed, 17 insertions(+), 9 deletions(-)
>
> diff --git
> a/IntelFsp2WrapperPkg/FspWrapperNotifyDxe/FspWrapperNotifyDxe.c
> b/IntelFsp2WrapperPkg/FspWrapperNotifyDxe/FspWrapperNotifyDxe.c
> index 0797f44..45eae4b 100644
> --- a/IntelFsp2WrapperPkg/FspWrapperNotifyDxe/FspWrapperNotifyDxe.c
> +++ b/IntelFsp2WrapperPkg/FspWrapperNotifyDxe/FspWrapperNotifyDxe.c
> @@ -246,14 +246,16 @@ FspWrapperNotifyDxeEntryPoint (
>      return EFI_SUCCESS;
>    }
>
> -  ProtocolNotifyEvent = EfiCreateProtocolNotifyEvent (
> -                          &gEfiPciEnumerationCompleteProtocolGuid,
> -                          TPL_CALLBACK,
> -                          OnPciEnumerationComplete,
> -                          NULL,
> -                          &Registration
> -                          );
> -  ASSERT (ProtocolNotifyEvent != NULL);
> +  if (PcdGetBool(PcdNotifyPciEnumerationComplete)) {
> +    ProtocolNotifyEvent = EfiCreateProtocolNotifyEvent (
> +                            &gEfiPciEnumerationCompleteProtocolGuid,
> +                            TPL_CALLBACK,
> +                            OnPciEnumerationComplete,
> +                            NULL,
> +                            &Registration
> +                            );
> +    ASSERT (ProtocolNotifyEvent != NULL);  }
>
>    Status = EfiCreateEventReadyToBootEx (
>               TPL_CALLBACK,
> diff --git
> a/IntelFsp2WrapperPkg/FspWrapperNotifyDxe/FspWrapperNotifyDxe.inf
> b/IntelFsp2WrapperPkg/FspWrapperNotifyDxe/FspWrapperNotifyDxe.inf
> index f851f68..f28356d 100644
> --- a/IntelFsp2WrapperPkg/FspWrapperNotifyDxe/FspWrapperNotifyDxe.inf
> +++ b/IntelFsp2WrapperPkg/FspWrapperNotifyDxe/FspWrapperNotifyDxe.inf
> @@ -61,7 +61,8 @@
>    gFspHobGuid                                       ## CONSUMES ## HOB
>
>  [Pcd]
> -  gIntelFsp2WrapperTokenSpaceGuid.PcdFspsBaseAddress  ## CONSUMES
> +  gIntelFsp2WrapperTokenSpaceGuid.PcdFspsBaseAddress               ##
> CONSUMES
> +  gIntelFsp2WrapperTokenSpaceGuid.PcdNotifyPciEnumerationComplete  ##
> CONSUMES
>
>  [Depex]
>    TRUE
> diff --git a/IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dec
> b/IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dec
> index d9d2d80..52ed9d8 100644
> --- a/IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dec
> +++ b/IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dec
> @@ -74,6 +74,11 @@
>    ## This is the base address of FSP-T/M/S
>
> gIntelFsp2WrapperTokenSpaceGuid.PcdFsptBaseAddress|0x00000000|UINT32|
> 0x00000300
>
> gIntelFsp2WrapperTokenSpaceGuid.PcdFspmBaseAddress|0x00000000|UINT32
> |0x00000301
> +  ## Indicates if the FSP wrapper will notify FSP
> PciEnumerationComplete.<BR><BR>
> +  #   TRUE  - FSP wrapper will notify PciEnumerationComplete to FSP.<BR>
> +  #   FALSE - FSP wrapper will NOT notify PciEnumerationComplete to FSP.<BR>
> +  # @Prompt Notify FSP PciEnumerationComplete.
> +
> gIntelFsp2WrapperTokenSpaceGuid.PcdNotifyPciEnumerationComplete|TRUE|
> BOOLEAN|0x40000009
>
>  [PcdsFixedAtBuild, PcdsPatchableInModule,PcdsDynamic,PcdsDynamicEx]
>
> gIntelFsp2WrapperTokenSpaceGuid.PcdFspsBaseAddress|0x00000000|UINT32|
> 0x00001001
> --
> 2.7.0.windows.1
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to