Reviewed-by: Ray Ni <ray...@intel.com>

> -----Original Message-----
> From: Guo, Gua <gua....@intel.com>
> Sent: Monday, June 20, 2022 9:56 AM
> To: devel@edk2.groups.io
> Cc: Guo, Gua <gua....@intel.com>; Dong, Guo <guo.d...@intel.com>; Ni,
> Ray <ray...@intel.com>
> Subject: [PATCH] UefiPayloadPkg: UniversalPayloadBuild.py to support --pcd
> feature
> 
> From: Gua Guo <gua....@intel.com>
> 
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3955
> 
> Currently, UPL freezed all PCD and only known UPL hob can hook DXE
> Drivers behavior, add optional feature on UniversalPayloadBuild.py to
> have another way to hook PCD value.
> 
> Cc: Guo Dong <guo.d...@intel.com>
> Cc: Ray Ni <ray...@intel.com>
> Signed-off-by: Gua Guo <gua....@intel.com>
> ---
>  UefiPayloadPkg/UniversalPayloadBuild.py | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/UefiPayloadPkg/UniversalPayloadBuild.py
> b/UefiPayloadPkg/UniversalPayloadBuild.py
> index 089d631b51..c71526e0a6 100644
> --- a/UefiPayloadPkg/UniversalPayloadBuild.py
> +++ b/UefiPayloadPkg/UniversalPayloadBuild.py
> @@ -82,6 +82,11 @@ def BuildUniversalPayload(Args, MacroList):
>          print("- Failed - Please check if LLVM is installed or if CLANG_BIN 
> is set
> correctly")
> 
>          sys.exit(1)
> 
> 
> 
> +    Pcds = ""
> 
> +    if (Args.pcd != None):
> 
> +        for PcdItem in Args.pcd:
> 
> +            Pcds += " --pcd {}".format (PcdItem)
> 
> +
> 
>      Defines = ""
> 
>      for key in MacroList:
> 
>          Defines +=" -D {0}={1}".format(key, MacroList[key])
> 
> @@ -90,12 +95,14 @@ def BuildUniversalPayload(Args, MacroList):
>      # Building DXE core and DXE drivers as DXEFV.
> 
>      #
> 
>      BuildPayload = f"build -p {DscPath} -b {BuildTarget} -a X64 -t 
> {ToolChain} -y
> {PayloadReportPath} {Quiet}"
> 
> +    BuildPayload += Pcds
> 
>      BuildPayload += Defines
> 
>      RunCommand(BuildPayload)
> 
>      #
> 
>      # Building Universal Payload entry.
> 
>      #
> 
>      BuildModule = f"build -p {DscPath} -b {BuildTarget} -a {BuildArch} -m
> {EntryModuleInf} -t {ElfToolChain} -y {ModuleReportPath} {Quiet}"
> 
> +    BuildModule += Pcds
> 
>      BuildModule += Defines
> 
>      RunCommand(BuildModule)
> 
> 
> 
> @@ -128,6 +135,7 @@ def main():
>      parser.add_argument("-D", "--Macro", action="append",
> default=["UNIVERSAL_PAYLOAD=TRUE"])
> 
>      parser.add_argument('-i', '--ImageId', type=str, help='Specify payload ID
> (16 bytes maximal).', default ='UEFI')
> 
>      parser.add_argument('-q', '--Quiet', action='store_true', help='Disable 
> all
> build messages except FATAL ERRORS.')
> 
> +    parser.add_argument("-p", "--pcd", action="append")
> 
>      MacroList = {}
> 
>      args = parser.parse_args()
> 
>      if args.Macro is not None:
> 
> --
> 2.31.1.windows.1



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


Reply via email to