summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/security/tpm/tspi/crtm.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/security/tpm/tspi/crtm.c b/src/security/tpm/tspi/crtm.c
index 80483d575e..0841d23f13 100644
--- a/src/security/tpm/tspi/crtm.c
+++ b/src/security/tpm/tspi/crtm.c
@@ -59,6 +59,17 @@ uint32_t tspi_init_crtm(void)
return VB2_SUCCESS;
}
+ struct region_device fmap;
+ if (fmap_locate_area_as_rdev("FMAP", &fmap) == 0) {
+ if (tpm_measure_region(&fmap, TPM_RUNTIME_DATA_PCR, "FMAP: FMAP")) {
+ printk(BIOS_ERR,
+ "TSPI: Couldn't measure FMAP into CRTM!\n");
+ return VB2_ERROR_UNKNOWN;
+ }
+ } else {
+ printk(BIOS_ERR, "TSPI: Could not find FMAP!\n");
+ }
+
/* measure bootblock from RO */
struct cbfsf bootblock_data;
struct region_device bootblock_fmap;