microsoft/mu_plus v2025020003.0.1
microsoft/mu_plus
Captured source
source ↗v2025020003.0.1
Repository: microsoft/mu_plus
Tag: v2025020003.0.1
Published: 2026-02-10T05:10:21Z
Prerelease: no
Release notes:
What's Changed
[REBASE \& FF] Fix Memory Tests to Run on Patina @os-d (#825)
Change Details
Description
See individual commit descriptions for full details. This changeset updates the paging audit simple test, full audit, and memory protections test app to run on Patina.
- [ ] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [x] Includes documentation?
How This Was Tested
Tested on physical Intel, Q35, and SBSA.
Integration Instructions
Ensure the platform is producing the memory protection HOB with:
DxeSettings.HeapGuardPolicy.Fields.UefiPageGuard = 0; DxeSettings.HeapGuardPolicy.Fields.UefiPoolGuard = 0;
Until Patina enables those features, otherwise those tests will execute and will fail due to no guard pages enabled.
This is a breaking change because it depends on mu_basecore version >= v2025020003.0.2 as some header definitions are depended on in that release.
Update Adv Logger Info to V6 [Rebase \& FF] @makubacki (#826)
Change Details
Description
AdvLoggerPkg: Define a single advanced logger info version
Currrently, ADVANCED_LOGGER_INFO_VER is being used to set and check the version field in the ADVANCED_LOGGER_INFO struct.
This more clearly defines that version to be associated with the log info structure and breaks out the Hardware Level version to a macro (ADVANCED_LOGGER_INFO_HW_LVL_SUPPORTED_VER) that clearly shows that is an identifier for hardware level support being present in the logger info version.
---
AdvLoggerPkg: Bump ADVANCED_LOGGER_INFO_VER to 6
Updates the major version to 6 to account for the NewLoggerInfoAddress field that was added to ADVANCED_LOGGER_INFO.
---
- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [ ] Includes tests?
- [ ] Includes documentation?
How This Was Tested
- AdvLoggerPkg CI build
- AdvLoggerPkg QEMU Q35 boot to EFI shell and dump log with EFI app
- Intel physical platform boot to OS and decode log (in progress)
- Arm platform test (todo)
Integration Instructions
- Ensure all adv logger code is updated to the same version and you're using the latest version of the applications in AdvLoggerPkg.
AdvLoggerPkg: DecodeUefiLog handle frequency errors. @apop5 (#824)
Change Details
Description
When calling DecodeUefiLog, if the system was not able to provide a frequency in the log, it will be reported as 0. With no verification check of a zero frequency, DecodeUefiLog would attempt a divide by zero when converting time to nano seconds.
Add a check that prevents divide by zero. This will report times of 0 for all timestamps in the decoded log.
- [ ] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [ ] Includes tests?
- [ ] Includes documentation?
How This Was Tested
On a physical platform where no timer frequency was reported, encountered a python exception. After change, log was correctly retrieved and displays a timestamp of 0.
Integration Instructions
No integration necessary.
Refactor HID Keyboard Reset support @joschock (#823)
Change Details
Description
This PR changes how CTRL-ALT-DEL resets are handled by the HID stack. Previously, they were handled by the lower layer key processing code; but this caused them to be handled at an implementation-defined TPL based on what TPL the input reports are generated at by the HID I/O layer.
This change moves the CTRL-ALT-DEL to use the existing SimpleTextInEx key registration infrastructure to handle the reset logic, effectively moving the reset handling up to a higher level of abstraction.
This also simplifies disabling this capability behind a feature flag should it be desirable in the future to separate reset logic from the HID stack entirely.
- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [ ] Includes tests?
- [ ] Includes documentation?
How This Was Tested
Verified CTRL-ALT-DEL resets system from UEFI shell and that reset occurs at TPL_CALLBACK.
Integration Instructions
N/A
Configure watchdog interrupt for ARM platform @rohansenUSA (#820)
Change Details
Description
When using MpManagement to suspend all cores to a C-state that powers down the core the non-secure watchdog is being used to wake up a core after a certain amount of time.
On ARM reference platforms the non-secure watchdog interrupt is a level interrupt and active high. and this PR configures the interrupt trigger accordingly. Also, when all cores are powered down interrupt IRM (Interrupt Routing Mode) can't be used and the interrupt have to be routed to a specific core using the affinity fields. This PR programs the interrupt to go to the BSP.
- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?
How This Was Tested
Tested on custom Microsoft hardware.
Following use case was run: 1. Program watchdog timer. 2. Power down cores. 3. Watchdog interrupt to wake up BSP.
Integration Instructions
N/A
MsWheaPkg: Change debug prints to avoid confusion @kuqin12 (#819)
Change Details
Description
The current debug output labels all HwErrRec entries as error records. While technically accurate given the “Hardware Error Record” naming, this can be misleading, as some entries are informational rather than actual errors.
This change updates the debug output to use “telemetry record” instead, reducing the risk of confusion.
- [ ] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [ ] Includes tests?
- [ ] Includes documentation?
How This Was Tested
Debug print change only, non-functional.
Integration Instructions
N/A
Rendering Engine Fixes [Rebase \& FF] @makubacki (#818)
Change Details
Description
MsGraphicsPkg/RenderingEngineDxe: Defensive checks for global GOP pointer
Verify mParentGop is valid before use.
---
MsGraphicsPkg/RenderingEngineDxe: Defensive checks for global GOP pointer
Verify mParentGop is valid before use.
---
- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [ ] Includes tests?
- [ ] Includes documentation?
How This Was Tested
- CI, build and verify GOP start and operation in QEMU Q35, and
"disconnect -r"succeeds
Integration Instructions
- N/A...
Excerpt shown — open the source for the full document.