69abcf1e78
UefiPayloadPkg: Enhance build script for BuildEntryOnly
...
Currently, have two command for pre-build binary support
1. --BuildEntryOnly: build UPL Entry file
2. --PreBuildUplBinary: build UPL binary based on UPL
And these two commands should be exclusived, shouldn't
have chance run it in the meantime.
Case1: Build UPL entry with CLANGDWARF
python UefiPayloadPkg/UniversalPayloadBuild.py --BuildEntryOnly
Case2: Use pre-built UPL entry and build other fv by VS2019
python UefiPayloadPkg/UniversalPayloadBuild.py -t VS2019 \
--PreBuildUplBinary UniversalPayload.elf
Case3: Build UPL Entry with CLANGDWARF and build other fv by VS2019
python UefiPayloadPkg/UniversalPayloadBuild.py -t VS2019
Cc: Guo Dong <guo.dong@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Cc: Sean Rhodes <sean@starlabs.systems >
Cc: James Lu <james.lu@intel.com >
Cc: Gua Guo <gua.guo@intel.com >
Signed-off-by: Gua Guo <gua.guo@intel.com >
Reviewed-by: James Lu <james.lu@intel.com >
2023-06-07 18:22:28 +00:00
95ef765839
UefiPayloadPkg: Clang dependency removal
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4426
Use Python to replace llvm-objcopy in UniversalPayloadBuild.py.
1. AddSection32() and AddSection64(): Make a section named
<section> with the contents of <file>.
2. RemoveSection32() and RemoveSection64(): Remove <section>.
3. ReplaceFv (): remove the section before add the section
if the file exists.
Cc: Guo Dong <guo.dong@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Cc: Sean Rhodes <sean@starlabs.systems >
Cc: James Lu <james.lu@intel.com >
Signed-off-by: BruceX Wang <brucex.wang@intel.com >
Reviewed-by: Gua Guo <gua.guo@intel.com >
2023-04-28 05:54:26 +00:00
67b5dba791
UefiPayloadPkg: Move Network modules from Dxe FV to Network FV in elf
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4417
Since UefiPayload had supported multiple FV,
move Network.fdf.inc to new firmware volume and
add this network FV into elf file.
Cc: Guo Dong <guo.dong@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Cc: Sean Rhodes <sean@starlabs.systems >
Cc: James Lu <james.lu@intel.com >
Signed-off-by: Linus Wu <linusx.wu@intel.com >
Reviewed-by: Gua Guo <gua.guo@intel.com >
2023-04-20 18:47:10 +00:00
cdf6ff1719
UefiPayloadPkg:Add new build commands for UniversalPayload
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4375
add '-pb' command of build bios with exist PreUniversalPayload file.
'-e' command of olny build the UniversalPayloadentry file.
Cc: Guo Dong <guo.dong@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Reviewed-by: James Lu <james.lu@intel.com >
Reviewed-by: Gua Guo <gua.guo@intel.com >
Signed-off-by: KasimX Liu <kasimx.liu@intel.com >
2023-04-07 03:47:30 +00:00
e3e88d90e8
UefiPayloadPkg: Support more input parameter
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4386
Add additional input parameter support
--SpecRevision: user input spec version
--Revision: user input revision
--ProducerId: producer company name
1. UniversalPayloadBuild.py
2. Downgrade spec revision from 0.9 to 0.7
Cc: Guo Dong <guo.dong@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Cc: Sean Rhodes <sean@starlabs.systems >
Cc: James Lu <james.lu@intel.com >
Reviewed-by: Gua Guo <gua.guo@intel.com >
Signed-off-by: Linus Wu <linusx.wu@intel.com >
2023-03-30 02:25:13 +00:00
3c16e6fb97
UefiPayloadPkg: Fixed that The UPL info section is not aligned at 4-byte
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4196
Align .upld_info with 4-byte boundary by spec
Cc: Guo Dong <guo.dong@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Cc: Sean Rhodes <sean@starlabs.systems >
Reviewed-by: James Lu <james.lu@intel.com >
Reviewed-by: Gua Guo <gua.guo@intel.com >
Signed-off-by: MarsX Lin <marsx.lin@intel.com >
2022-12-21 04:44:29 +00:00
05da2d24b0
UefiPayloadPkg: Move bdsdxe.inf from DXEFV to BDSFV
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4196
Since UefiPayload had supported multiple fv,
move bdsdxe.inf to new firmware volume and
modify the script of UniversalPayloadPkgBuild.py to
support bdsdxe fv in elf file
Cc: Guo Dong <guo.dong@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Cc: Sean Rhodes <sean@starlabs.systems >
Reviewed-by: James Lu <james.lu@intel.com >
Reviewed-by: Gua Guo <gua.guo@intel.com >
Signed-off-by: MarsX Lin <marsx.lin@intel.com >
2022-12-19 07:28:55 +00:00
85d805ed32
UefiPayloadPkg: The UPL info section is not aligned at 4-byte boundary
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4153
1.Upgrade spec revision to 0.9
2.Align .upld_info with 4-byte boundary by spec
Reviewed-by: Guo Dong <guo.dong@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Reviewed-by: James Lu <james.lu@intel.com >
Cc: Gua Guo <gua.guo@intel.com >
Signed-off-by: VictorX Hsu <victorx.hsu@intel.com >
2022-11-28 06:59:08 +00:00
21e6ef7522
UefiPayloadPkg: Align Attribute value with UPL spec
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3963
Based on UPL spec 2.12.2. Universal Payload Information Section,
it defines item "Attribute" on UPLD_INFO_HEADER for Debug build
should be "1", and Release build should be "0".
Currently, The value of item "Attribute" is always "0"
Cc: Guo Dong <guo.dong@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
Cc: James Lu <james.lu@intel.com >
Signed-off-by: Gua Guo <gua.guo@intel.com >
2022-06-30 03:45:38 +00:00
2aee08c0b6
UefiPayloadPkg: Backward support with python 3.6
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3960
Currently, UniversalPayloadBuild.py don't have support
python3.6, we use python3.6 will encounter f"" failure
use the change to fix it to support python3.6/3.7/3.8.
Cc: Guo Dong <guo.dong@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
Cc: James Lu <james.lu@intel.com >
Reviewed-by: Gua Guo <gua.guo@intel.com >
Signed-off-by: KasimX Liu <kasimx.liu@intel.com >
2022-06-24 12:59:41 +00:00
cfe165140a
UefiPayloadPkg: UniversalPayloadBuild.py to support --pcd feature
...
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.dong@intel.com >
Reviewed-by: : Ray Ni <ray.ni@intel.com >
Signed-off-by: Gua Guo <gua.guo@intel.com >
2022-06-21 04:11:13 +00:00
dac2fc8146
UefiPayloadPkg: Align SpecRevision value with UPL spec
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3933
URL: https://universalpayload.github.io/documentation/
1. Currently, SpecRevision on USF spec is 0.7. Change to align it.
2. SpecRevision is not be patched into UniversalPayloadInfo.bin due to
different structure item name. Change item name from "HeaderRevision"
to "SpecRevision" to check the correct value can be patched.
Reviewed-by: Ray Ni <ray.ni@intel.com >
Reviewed-by: Guo Dong <guo.dong@intel.com >
Signed-off-by: Gua Guo <gua.guo@intel.com >
2022-05-27 16:15:26 +00:00
b4be5f05dd
UefiPayloadPkg: Align Identifier value with UPL spec
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3933
URL: https://universalpayload.github.io/documentation/
Currently, Identifier value is "UPLD", it needs to have correct value
"PLDH" based on Universal Payload Specification spec section 2.12.2
Reviewed-by: Ray Ni <ray.ni@intel.com >
Reviewed-by: Guo Dong <guo.dong@intel.com >
Signed-off-by: Gua Guo <gua.guo@intel.com >
2022-05-27 16:15:26 +00:00
1a6c837638
UefiPayloadPkg: Fix the UPL build failure
...
Add double quotes to LlvmObjcopyPath.
Blank space in LlvmObjcopyPath will cause build failure.
This build failure is introduced by 2306555bf9
(
"UefiPayloadPkg: Fix IA32 entry build failure").
Signed-off-by: Dun Tan <dun.tan@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
Reviewed-by: Guo Dong <guo.dong@intel.com >
Cc: Benjamin You <benjamin.you@intel.com >
Cc: Sean Rhodes <sean@starlabs.systems >
2022-05-09 02:45:01 +00:00
2306555bf9
UefiPayloadPkg: Fix IA32 entry build failure
...
The ObjCopyFlag and EntryOutputDir need to be modified when
building IA32 UniversalPayload Entry
Signed-off-by: Dun Tan <dun.tan@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Cc: Guo Dong <guo.dong@intel.com >
Cc: Benjamin You <benjamin.you@intel.com >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Reviewed-by: Guo Dong <guo.dong@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
2022-04-22 02:13:36 +00:00
4cfb28f12a
UefiPayloadPkg: Fix the build failure
...
When Quite parameter is not provided, its default value would
be "None" instead of "". So update its default value not to
impact the build.
Cc: Ray Ni <ray.ni@intel.com >
Cc: Benjamin You <benjamin.you@intel.com >
Cc: Sean Rhodes <sean@starlabs.systems >
Signed-off-by: Guo Dong <guo.dong@intel.com >
Acked-by: Dun Tan <dun.tan@intel.com >
2022-04-14 19:34:05 +00:00
dab96cf02e
UefiPayloadPkg: Add --quiet argument to Universal Payload build script
...
Signed-off-by: Sean Rhodes <sean@starlabs.systems >
Reviewed-by: Guo Dong <guo.dong@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
2022-04-10 21:00:54 +00:00
676084303d
UefiPayloadPkg: Support IA32 Build
...
The payload entry module should support to build as IA32 image
beside X64 image so that it could work with 32bit bootloaders.
This patch adds a option build parameter for arch selection.
Cc: Ray Ni <ray.ni@intel.com >
Cc: Benjamin You <benjamin.you@intel.com >
Cc: Sean Rhodes <sean@starlabs.systems >
Signed-off-by: Guo Dong <guo.dong@intel.com >
Reviewed-by: Sean Rhodes <sean@starlabs.systems >
2022-04-10 19:36:44 +00:00
4a1899dd79
UefiPayloadPkg: Add ".upld_info" in universal payload
...
V2: Use LittleEndianStructure by review comment.
From the universal scalable firmware payload requirement V0.75,
Payload must have Universal Payload Information Section ".upld_info"
So update the build tool to add this section.
Cc: Ray Ni <ray.ni@intel.com >
Cc: Maurice Ma <maurice.ma@intel.com >
Cc: Benjamin You <benjamin.you@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
Signed-off-by: Guo Dong <guo.dong@intel.com >
2021-09-29 05:39:09 +00:00
f4e72cf9d6
UefiPayloadPkg: Add script to build UniversalPayload in UefiPayloadPkg
...
V1: Add script to build UniversalPayload, which can be used after edksetup rebuild
The final UPL.elf will be located at root folder of edk2
V2: Revise the ouput directory of generated files and coding style in the script
Cc: Guo Dong <guo.dong@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
Cc: Maurice Ma <maurice.ma@intel.com >
Cc: Benjamin You <benjamin.you@intel.com >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Bob Feng <bob.c.feng@intel.com >
Signed-off-by: Dun Tan <dun.tan@intel.com >
2021-09-16 09:37:39 +00:00