git: 7fdc748c0c3d - stable/15 - amd64, powerpc: Enable tpm(4) in supported kernels
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 11 Oct 2026 01:22:22 UTC
The branch stable/15 has been updated by kbowling:
URL: https://cgit.FreeBSD.org/src/commit/?id=7fdc748c0c3d0f2f7c1c0725f9ff2a5085fc36ec
commit 7fdc748c0c3d0f2f7c1c0725f9ff2a5085fc36ec
Author: Kevin Bowling <kbowling@FreeBSD.org>
AuthorDate: 2026-08-28 00:14:02 +0000
Commit: Kevin Bowling <kbowling@FreeBSD.org>
CommitDate: 2026-10-11 01:21:08 +0000
amd64, powerpc: Enable tpm(4) in supported kernels
tpm(4) was removed from amd64 GENERIC because it broke suspend and
resume. The preceding lifecycle, state-save, interrupt, locality, and
teardown fixes address those failures for both TPM 1.2 and TPM 2.0.
Restore the driver to amd64 GENERIC and MINIMAL, where TPM entropy
harvesting remained enabled. Enable the driver and entropy harvesting
in the MPC85XX and QORIQ64 configurations, which already provide FDT,
spibus, and the platform SPI controller required by FDT-attached TPMs.
Leave the generic AIM and POWER configurations unchanged because they
have no TPM attachment bus.
The TPM 1.2 path completed repeated S3 cycles and command tests on
ThinkPad T430 and T440p systems. The TPM 2.0 path completed repeated
device and full-system suspend/resume cycles on a ThinkPad P51. The
PowerPC configuration matrix was checked to retain tpm(4) only where its
FDT SPI attachment path is present.
PR: 291067
Reviewed by: kevans
Tested by: Marek Zarychta <zarychtam_plan-b.pwste.edu.pl> (tpm1.2)
Fixes: 16f8ea6a81b5 ("amd64: Remove tpm(4) from GENERIC for now")
Relnotes: yes
Sponsored by: BBOX.io
Differential Revision: https://reviews.freebsd.org/D59247
(cherry picked from commit cb2964f840e873d03a0739f41eed5921922f93a0)
---
sys/amd64/conf/GENERIC | 2 +-
sys/amd64/conf/MINIMAL | 2 +-
sys/powerpc/conf/MPC85XX | 2 ++
sys/powerpc/conf/QORIQ64 | 2 ++
4 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/sys/amd64/conf/GENERIC b/sys/amd64/conf/GENERIC
index 0548c90985d1..e06c585318b6 100644
--- a/sys/amd64/conf/GENERIC
+++ b/sys/amd64/conf/GENERIC
@@ -327,7 +327,7 @@ device bpf # Berkeley packet filter
# random(4)
device rdrand_rng # Intel Bull Mountain RNG
device tpm # Trusted Platform Module
-options RANDOM_ENABLE_TPM # enable entropy from TPM 2.0
+options RANDOM_ENABLE_TPM # enable entropy from TPM devices
# USB support
options USB_DEBUG # enable debug msgs
diff --git a/sys/amd64/conf/MINIMAL b/sys/amd64/conf/MINIMAL
index b7baa2bd061d..043ef348698b 100644
--- a/sys/amd64/conf/MINIMAL
+++ b/sys/amd64/conf/MINIMAL
@@ -138,7 +138,7 @@ device bpf # Berkeley packet filter
# random(4)
device rdrand_rng # Intel Bull Mountain RNG
device tpm # Trusted Platform Module
-options RANDOM_ENABLE_TPM # enable entropy from TPM 2.0
+options RANDOM_ENABLE_TPM # enable entropy from TPM devices
# VirtIO support
device virtio # Generic VirtIO bus (required)
diff --git a/sys/powerpc/conf/MPC85XX b/sys/powerpc/conf/MPC85XX
index c74819c7fee0..8ca927f9d896 100644
--- a/sys/powerpc/conf/MPC85XX
+++ b/sys/powerpc/conf/MPC85XX
@@ -29,6 +29,7 @@ options DDB
options DEVICE_POLLING
#options DIAGNOSTIC
options FDT
+options RANDOM_ENABLE_TPM
#makeoptions FDT_DTS_FILE=mpc8555cds.dts
options FFS
options GDB
@@ -103,6 +104,7 @@ device sdhci
device sec
device spibus
device spigen
+device tpm
device tsec
device dpaa
device tuntap
diff --git a/sys/powerpc/conf/QORIQ64 b/sys/powerpc/conf/QORIQ64
index c64d015c37d1..37c087dd8a4d 100644
--- a/sys/powerpc/conf/QORIQ64
+++ b/sys/powerpc/conf/QORIQ64
@@ -32,6 +32,7 @@ options DDB
options DEVICE_POLLING
#options DIAGNOSTIC
options FDT
+options RANDOM_ENABLE_TPM
#makeoptions FDT_DTS_FILE=mpc8555cds.dts
options FFS #Berkeley Fast Filesystem
options SOFTUPDATES #Enable FFS soft updates support
@@ -106,6 +107,7 @@ device scc
device sdhci
device spibus
device spigen
+device tpm
device tuntap
device uart
options USB_DEBUG # enable debug msgs