[PATCH] Add support for new TCG PfP event types

Mario Limonciello mario.limonciello at amd.com
Sat Dec 30 01:45:59 UTC 2023


From: Mario Limonciello <superm1 at gmail.com>

PFP spec Level 00 Version 1.06 Revision 52 has two event types
that are not supported by FWTS.  Add these new events types.

Link: https://trustedcomputinggroup.org/wp-content/uploads/PC-Client-Platform-Firmware-Profile-Version-1.06-Revision-52_pub.pdf
Signed-off-by: Mario Limonciello <mario.limonciello at amd.com>
---
 src/lib/include/fwts_tpm.h          | 4 +++-
 src/tpm/tpmevlog/tpmevlog.c         | 2 ++
 src/tpm/tpmevlogdump/tpmevlogdump.c | 6 ++++++
 3 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/lib/include/fwts_tpm.h b/src/lib/include/fwts_tpm.h
index b6240f11..0cc80f0d 100644
--- a/src/lib/include/fwts_tpm.h
+++ b/src/lib/include/fwts_tpm.h
@@ -116,7 +116,9 @@ typedef enum {
 	EV_EFI_HCRTM_EVENT			= 0x80000010,
 	EV_EFI_VARIABLE_AUTHORITY		= 0x800000e0,
 	EV_EFI_SPDM_FIRMWARE_BLOB		= 0x800000e1,
-	EV_EFI_SPDM_FIRMWARE_CONFIG		= 0x800000e2
+	EV_EFI_SPDM_FIRMWARE_CONFIG		= 0x800000e2,
+	EV_EFI_SPDM_DEVICE_POLICY		= 0x800000e3,
+	EV_EFI_SPDM_DEVICE_AUTHORITY		= 0x800000e4,
 } fwts_tpmlog_event_type;
 
 
diff --git a/src/tpm/tpmevlog/tpmevlog.c b/src/tpm/tpmevlog/tpmevlog.c
index 794b47ca..d58e6e3f 100644
--- a/src/tpm/tpmevlog/tpmevlog.c
+++ b/src/tpm/tpmevlog/tpmevlog.c
@@ -85,6 +85,8 @@ static int tpmevlog_eventtype_check(fwts_framework *fw, const fwts_tpmlog_event_
 	case EV_EFI_VARIABLE_AUTHORITY:
 	case EV_EFI_SPDM_FIRMWARE_BLOB:
 	case EV_EFI_SPDM_FIRMWARE_CONFIG:
+	case EV_EFI_SPDM_DEVICE_POLICY:
+	case EV_EFI_SPDM_DEVICE_AUTHORITY:
 	case EV_COMPACT_HASH:
 		return FWTS_OK;
 	default:
diff --git a/src/tpm/tpmevlogdump/tpmevlogdump.c b/src/tpm/tpmevlogdump/tpmevlogdump.c
index de242e83..0a59fe34 100644
--- a/src/tpm/tpmevlogdump/tpmevlogdump.c
+++ b/src/tpm/tpmevlogdump/tpmevlogdump.c
@@ -138,6 +138,12 @@ static char *tpmevlogdump_evtype_to_string(const fwts_tpmlog_event_type event_ty
 	case EV_EFI_SPDM_FIRMWARE_CONFIG:
 		str = "EV_EFI_SPDM_FIRMWARE_CONFIG";
 		break;
+	case EV_EFI_SPDM_DEVICE_POLICY:
+		str = "EV_EFI_SPDM_DEVICE_POLICY";
+		break;
+	case EV_EFI_SPDM_DEVICE_AUTHORITY:
+		str = "EV_EFI_SPDM_DEVICE_AUTHORITY";
+		break;
 	case EV_COMPACT_HASH:
 		str = "EV_COMPACT_HASH";
 		break;
-- 
2.34.1




More information about the fwts-devel mailing list