Hello @luk4s0102
Thanks for providing the detailed diagnostics. Based on the evidence you've collected, I don't think additional TPM clearing, Windows reinstallations, or Secure Boot key resets are likely to add much at this point.
The key observation is:
TCG replay PCR 0–7 = all zero
Hardware PCR 0–7 = populated
PCR 11–14 = replay correctly
PcrsMatchTcgLog = False
That is not the expected state of a valid Measured Boot replay.
Microsoft describes Measured Boot as recording measurements into TPM PCRs while corresponding measurements are recorded in the TCG/Windows Boot Configuration Log. The event log is then replayed to reconstruct the expected PCR state and compare it with the TPM's actual PCR values.
1. Firmware TCG2 log vs. Windows parsing
Your results are consistent with either:
- the firmware isn't supplying the early SHA-256 measurements correctly in the TCG2 event log, or
- the events are present but Windows 11 25H2 is failing to parse/replay them correctly.
Tbsi_Get_TCG_Log_Ex obtains the Windows Boot Configuration Log/TCG log supplied through the platform. Microsoft documents that modern logs use TCG_PCR_EVENT2, where each event contains one or more algorithm-specific digests such as SHA-256.
Because your hardware PCRs contain valid non-zero SHA-256 values, the TPM clearly received measurements. The problem is that Windows cannot reconstruct those measurements from the event log.
The fact that PCR 11–14 replay correctly while PCR 0–7 don't is particularly important because it argues against a general TPM failure.
2. The HRESULTs
0x80070057 maps to: E_INVALIDARG / ERROR_INVALID_PARAMETER
In this context, I would interpret SoftwarePcrReplayHresult: 0x80070057 as evidence that Windows' software replay encountered data it couldn't process successfully. However, I wouldn't infer the exact malformed structure from that HRESULT alone.
Similarly, I wouldn't try to assign a definitive firmware defect based solely on 0x80280407 without Microsoft internal symbols/documentation for that particular replay path.
The raw event log is more valuable than either HRESULT for determining the root cause.
3. The change in log size is significant
This part of your testing is especially interesting:
- Previous attestable logs: ~94–105 KB
- Current failing logs: ~52 KB
together with the observation that the older boots were attestable while the newer installation immediately produced the smaller logs.
That doesn't prove Windows truncated the log, but it's strong enough that I would compare a known-good and failing log event-by-event.
Microsoft provides TBSLogGenerator.exe and PCPTool.exe specifically for decoding Measured Boot logs and tracking PCR changes.
I would compare:
EV_EFI_VARIABLE_DRIVER_CONFIG
EV_EFI_VARIABLE_BOOT
EV_EFI_BOOT_SERVICES_APPLICATION
EV_SEPARATOR
and other PCR 0/1/2/4/7 measurements between a known-good log and the current failing log.
If those early events are physically absent from the raw TCG log, that points strongly toward the firmware/UEFI TCG2 log producer.
If they're present with valid SHA-256 digests but Windows' replay still produces zero PCR values, that would point much more strongly toward a Windows parsing/replay regression.
4. BitLocker behavior
The BitLocker failure is consistent with the replay problem.
BitLocker relies on PCR measurements to establish that the boot environment is trustworthy. Microsoft specifically notes that changes or inconsistencies in PCR measurements can affect BitLocker and cause recovery or other protector-related problems.
With:
PcrsMatchTcgLog = False
PCR7 binding = Binding not possible
and Windows unable to reconstruct the early boot measurements, I wouldn't consider 0x8007000D / ERROR_INVALID_DATA from ProtectKeyWithTPM surprising.
I also wouldn't recommend trying to bypass the validation or force-create the TPM protector. That would treat the symptom rather than determine why the measured-boot evidence is invalid.
- One test would be especially valuable
If possible, take one affected X390 Yoga and boot a known earlier Windows build that previously produced valid Measured Boot results, while keeping BIOS version, TPM firmware, Secure Boot keys. BIOS settings, and hardware unchanged.
Then compare tpmtool comparepcr sha256 and the raw Measured Boot log between the two Windows builds.
If the older Windows build reconstructs PCR 0–7 correctly while 25H2 doesn't on identical firmware/hardware, that would be very strong evidence of a Windows-side regression.
Conversely, if the older Windows installation now exhibits the same zero-PCR replay, the evidence would shift toward firmware/UEFI behavior.
6. I think escalation is justified
Given that you've already reproduced this across multiple identical systems and collected: TPM ETL traces, tpmtool gatherlogs, raw TCG logs, Measured Boot JSON, hardware and software PCR values, Kernel-Boot logs, TPM-WMI logs, BitLocker logs, and Secure Boot variable information
I think you've reached the point where this warrants review by the Windows Measured Boot / TPM / BitLocker engineering team rather than repeating standard TPM troubleshooting.
I would include a known-good and failing raw TCG log pair, if available, with the escalation. That comparison should help determine whether the early firmware measurements disappeared from the log or Windows stopped interpreting them correctly.
I wouldn't post those diagnostic archives publicly. A Microsoft moderator/support engineer can request them through an appropriate private support channel.
I also couldn't find a currently documented Windows 11 25H2 known issue specifically matching SHA-256 PCR 0–7 replaying as zero on the ThinkPad X390 Yoga/Nuvoton NPCT75x combination, so I wouldn't classify this as a confirmed Windows 25H2 regression yet.
Based on the evidence presented, however, a firmware TCG2 logging problem or Windows TCG2 parsing/replay regression are both credible possibilities, and the known-good versus failing raw-log comparison should be the next useful discriminator.
Please "Accept the Answer" if this information helped you. This will help us and others in the community as well.