Hi Isaac,


I think you might be a little confused about how these PCDs operate. Here is 
the truth table:



Mode

PcdFspWrapperBootMode

PcdFspModeSelection

EDK II Native Mode

FALSE

N/A

FSP Dispatch Mode

TRUE

0

FSP API Mode

TRUE

1



So, this change modifies the if statement to read:



If (NOT FSP API Mode)



Instead of:



If (Native Mode)



This results in the behavior for native mode and FSP dispatch mode being 
identical, which as you point out is the desired end state. The only reason we 
have a conditional statement here is to support FSP API mode, which is a known 
issue and expected.



Thanks,

Nate



-----Original Message-----
From: Oram, Isaac W <isaac.w.o...@intel.com>
Sent: Monday, February 7, 2022 5:33 PM
To: Chiu, Chasel <chasel.c...@intel.com>; Zhang, Xiaoqiang 
<xiaoqiang.zh...@intel.com>; devel@edk2.groups.io
Cc: Desimone, Nathaniel L <nathaniel.l.desim...@intel.com>
Subject: RE: [PATCH v1] MinPlatformPkg: Install memory relating PPIs



This has uncovered another issue that we should fix so that this isn't 
necessary.



Since UEFI native code is all about binary interoperability, there should be no 
difference between native mode and FSP dispatch mode.  FV are FV, PPI are PPI, 
etc.  These two PCD should mean the exact same thing and this shouldn't be 
necessary.

We will look at moving all the board logic use out of edk2 and into 
MinPlatformPkg and board packages.



Regards,

Isaac



-----Original Message-----

From: Chiu, Chasel <chasel.c...@intel.com<mailto:chasel.c...@intel.com>>

Sent: Monday, February 7, 2022 1:09 AM

To: Zhang, Xiaoqiang 
<xiaoqiang.zh...@intel.com<mailto:xiaoqiang.zh...@intel.com>>; 
devel@edk2.groups.io<mailto:devel@edk2.groups.io>

Cc: Desimone, Nathaniel L 
<nathaniel.l.desim...@intel.com<mailto:nathaniel.l.desim...@intel.com>>; Oram, 
Isaac W <isaac.w.o...@intel.com<mailto:isaac.w.o...@intel.com>>

Subject: RE: [PATCH v1] MinPlatformPkg: Install memory relating PPIs





Thanks Xiaoqiang!

Reviewed-by: Chasel Chiu <chasel.c...@intel.com<mailto:chasel.c...@intel.com>>





> -----Original Message-----

> From: Zhang, Xiaoqiang 
> <xiaoqiang.zh...@intel.com<mailto:xiaoqiang.zh...@intel.com>>

> Sent: Monday, February 7, 2022 4:11 PM

> To: devel@edk2.groups.io<mailto:devel@edk2.groups.io>

> Cc: Zhang, Xiaoqiang 
> <xiaoqiang.zh...@intel.com<mailto:xiaoqiang.zh...@intel.com>>; Chiu, Chasel

> <chasel.c...@intel.com<mailto:chasel.c...@intel.com>>; Desimone, Nathaniel L

> <nathaniel.l.desim...@intel.com<mailto:nathaniel.l.desim...@intel.com>>; 
> Oram, Isaac W

> <isaac.w.o...@intel.com<mailto:isaac.w.o...@intel.com>>

> Subject: [PATCH v1] MinPlatformPkg: Install memory relating PPIs

>

> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3824

>

> Install memory relating PPIs for EDKII native build and FSP dispatch

> mode

>

> Signed-off-by: Xiaoqiang Zhang 
> <xiaoqiang.zh...@intel.com<mailto:xiaoqiang.zh...@intel.com>>

> Cc: Chasel Chiu <chasel.c...@intel.com<mailto:chasel.c...@intel.com>>

> Cc: Nate DeSimone 
> <nathaniel.l.desim...@intel.com<mailto:nathaniel.l.desim...@intel.com>>

> Cc: Isaac Oram <isaac.w.o...@intel.com<mailto:isaac.w.o...@intel.com>>

> ---

>

> Platform/Intel/MinPlatformPkg/PlatformInit/PlatformInitPei/PlatformInitPreMe

> m.c   | 5 ++++-

>

> Platform/Intel/MinPlatformPkg/PlatformInit/PlatformInitPei/PlatformIni

> tPreMe

> m.inf | 2 ++

>  2 files changed, 6 insertions(+), 1 deletion(-)

>

> diff --git

> a/Platform/Intel/MinPlatformPkg/PlatformInit/PlatformInitPei/PlatformI

> nitPre

> Mem.c

> b/Platform/Intel/MinPlatformPkg/PlatformInit/PlatformInitPei/PlatformI

> nitPre

> Mem.c

> index 6519fdd042..d8c96b52f4 100644

> ---

> a/Platform/Intel/MinPlatformPkg/PlatformInit/PlatformInitPei/PlatformI

> nitPre

> Mem.c

> +++

> b/Platform/Intel/MinPlatformPkg/PlatformInit/PlatformInitPei/PlatformI

> nitPre

> Mem.c

> @@ -481,7 +481,10 @@ PlatformInitPreMem (

>

>    BuildMemoryTypeInformation ();

>

> -  if (!PcdGetBool(PcdFspWrapperBootMode)) {

> +  if ((!PcdGetBool (PcdFspWrapperBootMode)) || (PcdGet8

> (PcdFspModeSelection) == 0)) {

> +    //

> +    // Install memory relating PPIs for EDKII native build and FSP dispatch 
> mode

> +    //

>      Status = PeiServicesInstallPpi (mMemPpiList);

>      ASSERT_EFI_ERROR (Status);

>    }

> diff --git

> a/Platform/Intel/MinPlatformPkg/PlatformInit/PlatformInitPei/PlatformI

> nitPre

> Mem.inf

> b/Platform/Intel/MinPlatformPkg/PlatformInit/PlatformInitPei/PlatformI

> nitPre

> Mem.inf

> index fb997838ef..86d8246f02 100644

> ---

> a/Platform/Intel/MinPlatformPkg/PlatformInit/PlatformInitPei/PlatformI

> nitPre

> Mem.inf

> +++

> b/Platform/Intel/MinPlatformPkg/PlatformInit/PlatformInitPei/PlatformI

> nitPre

> Mem.inf

> @@ -34,11 +34,13 @@

>    MdeModulePkg/MdeModulePkg.dec

>    MdePkg/MdePkg.dec

>    IntelSiliconPkg/IntelSiliconPkg.dec

> +  IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dec

>

>  [Pcd]

>    gMinPlatformPkgTokenSpaceGuid.PcdFspWrapperBootMode          ##

> CONSUMES

>    gMinPlatformPkgTokenSpaceGuid.PcdStopAfterDebugInit          ## CONSUMES

>    gMinPlatformPkgTokenSpaceGuid.PcdStopAfterMemInit            ## CONSUMES

> +  gIntelFsp2WrapperTokenSpaceGuid.PcdFspModeSelection          ##

> CONSUMES

>

>  [FixedPcd]

>    gMinPlatformPkgTokenSpaceGuid.PcdPlatformEfiAcpiReclaimMemorySize

> ## CONSUMES

> --

> 2.32.0.windows.1




-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#86437): https://edk2.groups.io/g/devel/message/86437
Mute This Topic: https://groups.io/mt/88967939/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to