@@ -45,9 +45,13 @@ firmware after coreboot, you get a mix of both.
4545
4646### PCR banks
4747
48- At the time of writing (September 2025) coreboot supports extending only a
49- single bank of a PCR despite ability of TPM 2.0 to handle multiple banks. A PCR
50- bank, which corresponds to a specific hash function, is fixed at build time:
48+ Since 2026 Dasharo's fork of coreboot started supporting extending all active
49+ banks of a TPM 2.0 that it knows about. All prior releases (including some in
50+ the early 2026 and releases using older version of the code base) can update
51+ at most a single PCR bank.
52+
53+ A PCR bank corresponds to a specific hash function, it's fixed for TPM 1.2 and
54+ is selected during build for TPM 2.0:
5155
5256| TPM version | PCR Bank
5357| ----------- | --------
@@ -56,9 +60,15 @@ bank, which corresponds to a specific hash function, is fixed at build time:
5660
5761This has an implication for TPM 2.0 case when multiple PCR banks are active and
5862used by EDK. This is handled by using dummy hash values (` 0100... ` ) for missing
59- digests (SHA-1) which do not correspond to actual PCR updates. Doing this
60- breaks replaying of TPM log unless fake digests are skipped, but it allows to
61- comply with TPM event log format.
63+ digests (most often SHA-1) which do not correspond to actual PCR updates.
64+ Doing this breaks replaying of TPM log unless fake digests are skipped, but it
65+ allows to comply with TPM event log format.
66+
67+ While newer versions of the firmware support multiple digests, the exact set of
68+ supported algorithms is still fixed at build time. This means that it is still
69+ possible to have some banks unpopulated if coreboot doesn't know a particular
70+ digest (by default only SHA-1 and SHA-256 are selected leaving less popular
71+ SHA-384 and SHA-512 disabled).
6272
6373### PCR measurements
6474
0 commit comments