<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Tianocore/edk2.git/UefiPayloadPkg, branch dependabot/github_actions/actions/github-script-8</title>
<subtitle>EDK II (mirror)</subtitle>
<id>https://git.radix-linux.su/Tianocore/edk2.git/atom?h=dependabot%2Fgithub_actions%2Factions%2Fgithub-script-8</id>
<link rel='self' href='https://git.radix-linux.su/Tianocore/edk2.git/atom?h=dependabot%2Fgithub_actions%2Factions%2Fgithub-script-8'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/'/>
<updated>2025-09-25T22:04:10+00:00</updated>
<entry>
<title>UefiPayloadPkg: Drop ARM32 Support</title>
<updated>2025-09-25T22:04:10+00:00</updated>
<author>
<name>Oliver Smith-Denny</name>
<email>osde@microsoft.com</email>
</author>
<published>2025-09-15T04:16:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=3d50e76f0343014e0580f05904836f87bb92e468'/>
<id>urn:sha1:3d50e76f0343014e0580f05904836f87bb92e468</id>
<content type='text'>
edk2 is dropping support for the ARM32 architecture. This commit
removes ARM32 support from UefiPayloadPkg. It removes irrelevant
VALID_ARCHITECTURES comments from infs that are not arch
specific.

Signed-off-by: Oliver Smith-Denny &lt;osde@microsoft.com&gt;
</content>
</entry>
<entry>
<title>UefiPayloadPkg: RISCV: Licensing Fix</title>
<updated>2025-08-27T11:59:47+00:00</updated>
<author>
<name>Akshay Behl</name>
<email>cap2k4@rivosinc.com</email>
</author>
<published>2025-07-28T07:29:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=6755c9d82c5683a6641fd345abd5d7463853b2a5'/>
<id>urn:sha1:6755c9d82c5683a6641fd345abd5d7463853b2a5</id>
<content type='text'>
Fixing a licensing typo in UefiPayloadEntry/RiscV64/DxeLoadFuncFit.c

Signed-off-by: Akshay Behl &lt;cap2k4@rivosinc.com&gt;
</content>
</entry>
<entry>
<title>UefiPayloadPkg: update stack address print to 64 bit</title>
<updated>2025-08-26T22:01:01+00:00</updated>
<author>
<name>Dhaval</name>
<email>dhaval@rivosinc.com</email>
</author>
<published>2025-07-07T16:00:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=8404e44c635c74e527c5299679b1ceaf288bdb2d'/>
<id>urn:sha1:8404e44c635c74e527c5299679b1ceaf288bdb2d</id>
<content type='text'>
Signed-off-by: Akshay Behl &lt;cap2k4@rivosinc.com&gt;

Co-authored-by: Dhaval Sharma &lt;dhaval@rivosinc.com&gt;
</content>
</entry>
<entry>
<title>UefiPayloadPkg/FmpDeviceSmmLib: Add for full chip flashing via SMMSTOREv2</title>
<updated>2025-08-25T11:54:17+00:00</updated>
<author>
<name>Sergii Dmytruk</name>
<email>sergii.dmytruk@3mdeb.com</email>
</author>
<published>2024-07-20T13:56:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=68a7665250e814f4ce8dd10f4310ce27df21e495'/>
<id>urn:sha1:68a7665250e814f4ce8dd10f4310ce27df21e495</id>
<content type='text'>
Part of the functions of the library are left unimplemented (return
EFI_UNSUPPORTED) the rest use information about current firmware
obtained from CBMEM (at this point available in a HOB) and SMMSTOREv2 to
perform flashing.

Flashing is slightly optimized: FmpDeviceSetImageWithStatus() first
reads a block and checks that it differs from the new contents before
initiating erase and write.

On successful flashing runtime APIs for dealing with EFI variables are
replaced with stubs to prevent accesses to SMMSTORE from the currently
running firmware.  The SMMSTORE region's contents and possibly location
and size have been changed as a result of the update and continued use
of it can have unpredictable consequences including corruption of the
newly written firmware image.  A capsule mode always ends with a reboot,
so the variable services are unavailable only for a very short period
after a successful flashing.

Signed-off-by: Sergii Dmytruk &lt;sergii.dmytruk@3mdeb.com&gt;
</content>
</entry>
<entry>
<title>UefiPayloadPkg/SmmStore: Add API to read/write/erase any flash block</title>
<updated>2025-08-25T11:54:17+00:00</updated>
<author>
<name>Sergii Dmytruk</name>
<email>sergii.dmytruk@3mdeb.com</email>
</author>
<published>2024-07-20T08:30:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=2736239acaa7eb6dd6866eab543d307f25ee4b56'/>
<id>urn:sha1:2736239acaa7eb6dd6866eab543d307f25ee4b56</id>
<content type='text'>
This allows reusing SMMSTORE protocol for the purpose of firmware
updates.

Signed-off-by: Sergii Dmytruk &lt;sergii.dmytruk@3mdeb.com&gt;
</content>
</entry>
<entry>
<title>UefiPayloadPkg/UefiPayloadPkg.dsc: Enable FMP updates</title>
<updated>2025-08-25T11:54:17+00:00</updated>
<author>
<name>Sergii Dmytruk</name>
<email>sergii.dmytruk@3mdeb.com</email>
</author>
<published>2024-07-11T21:32:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=e7a1b295532d7177ea390d3d4efc3b1a30cc58b6'/>
<id>urn:sha1:e7a1b295532d7177ea390d3d4efc3b1a30cc58b6</id>
<content type='text'>
This is using test certificate stored in this repository.  Building
additionally requires setting CAPSULE_FIRMWARE_GUID to firmware GUID in
string form.

FDF file is not updated because FMP driver is to be embedded into update
capsule.

Signed-off-by: Sergii Dmytruk &lt;sergii.dmytruk@3mdeb.com&gt;
</content>
</entry>
<entry>
<title>UefiPayloadPkg: Enable processing of capsules</title>
<updated>2025-08-25T11:54:17+00:00</updated>
<author>
<name>Sergii Dmytruk</name>
<email>sergii.dmytruk@3mdeb.com</email>
</author>
<published>2024-06-30T16:17:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=f53b19f6c8ff6bababee3063d1e4f14abd723709'/>
<id>urn:sha1:f53b19f6c8ff6bababee3063d1e4f14abd723709</id>
<content type='text'>
Make UefiPayloadPkg.dsc add required libraries/DXEs/PCDs when
CAPSULE_SUPPORT define is set to TRUE.

UefiPayloadEntry now parses firmware information from a bootloader and
switches boot mode to BOOT_ON_FLASH_UPDATE if there are any capsules.
It's not guarded by any PCD under the assumption that bootloader won't
pass capsules if EDK shouldn't be handling them.

EsrtDxe is enabled to manage ESRT entries and it consumes the firmware
information HOB created by UefiPayloadEntry.  ProcessCapsules()
internally looks up EsrtManagementProtocol and calls SyncEsrtFmp() to
import data from available FMP instances.

PlatformBootManagerLib was made to call ProcessCapsules() twice: before
and after end-of-DXE.

Signed-off-by: Sergii Dmytruk &lt;sergii.dmytruk@3mdeb.com&gt;
</content>
</entry>
<entry>
<title>UefiPayloadPkg/UefiPayloadEntry: Import update capsules from bootloader</title>
<updated>2025-08-25T11:54:17+00:00</updated>
<author>
<name>Sergii Dmytruk</name>
<email>sergii.dmytruk@3mdeb.com</email>
</author>
<published>2024-04-29T22:13:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=cc149a8eaab5f09d021c035d81132bd6f21760e3'/>
<id>urn:sha1:cc149a8eaab5f09d021c035d81132bd6f21760e3</id>
<content type='text'>
The implementation is for CbParseLib, SblParseLib returns success while
doing nothing.

The HOBs created by BuildCvHob() will be eventually picked up and
processed in DXE phase by
MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleProcessLib.c

Because multiple capsules can be chained (simply by placing them one
after another), coreboot passes them as a single memory range which can
provide tenths of capsules.

coreboot won't pass any capsules unless it finds CapsuleUpdateData*
EFI variables and is able to parse memory ranges they point to as
scatter-gather lists of pages containing capsules.

Signed-off-by: Sergii Dmytruk &lt;sergii.dmytruk@3mdeb.com&gt;
</content>
</entry>
<entry>
<title>UefiPayloadPkg/BlSupportDxe: Publish ESRT with an entry for system firmware</title>
<updated>2025-08-25T11:54:17+00:00</updated>
<author>
<name>Sergii Dmytruk</name>
<email>sergii.dmytruk@3mdeb.com</email>
</author>
<published>2024-06-24T13:13:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=8b2433c2f5e07519a31057bc6acb2158acd9e5e3'/>
<id>urn:sha1:8b2433c2f5e07519a31057bc6acb2158acd9e5e3</id>
<content type='text'>
Use firmware information passed by a bootloader and parsed by BlParseLib
to make a single-element ESRT.  This informs operating systems and EDK
itself about which capsules are applicable for the current firmware.

Signed-off-by: Sergii Dmytruk &lt;sergii.dmytruk@3mdeb.com&gt;
</content>
</entry>
<entry>
<title>UefiPayloadPkg/BlParseLib: Add parsing of firmware info</title>
<updated>2025-08-25T11:54:17+00:00</updated>
<author>
<name>Sergii Dmytruk</name>
<email>sergii.dmytruk@3mdeb.com</email>
</author>
<published>2024-07-09T15:13:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=f3a5772acac85e4ce8335d447ab4896054e73634'/>
<id>urn:sha1:f3a5772acac85e4ce8335d447ab4896054e73634</id>
<content type='text'>
The implementation is for CbParseLib, SblParseLib returns an error.

coreboot's CB_TAG_FW_INFO is a machine-friendly version of a system
firmware component.  A component is identified by a GUID.  This is meant
to be primarily a source of information for ESRT.

The following coreboot options translate directly into fields of the
structure with information:
 - CONFIG_DRIVERS_EFI_MAIN_FW_GUID
 - CONFIG_DRIVERS_EFI_MAIN_FW_VERSION
 - CONFIG_DRIVERS_EFI_MAIN_FW_LSV
 - CONFIG_ROM_SIZE

The first 3 options depend on CONFIG_DRIVERS_EFI_FW_INFO.

Version as a string depends on CONFIG_LOCALVERSION as well as version of
the code base (misnamed as KERNELVERSION in coreboot's build system).

Signed-off-by: Sergii Dmytruk &lt;sergii.dmytruk@3mdeb.com&gt;
</content>
</entry>
</feed>
