diff options
| author | Kevin Bowling <kbowling@FreeBSD.org> | 2026-08-28 00:14:02 +0000 |
|---|---|---|
| committer | Kevin Bowling <kbowling@FreeBSD.org> | 2026-10-11 01:21:08 +0000 |
| commit | 7fdc748c0c3d0f2f7c1c0725f9ff2a5085fc36ec (patch) | |
| tree | a4ac081511808f132f76f776405518204cd92ade | |
| parent | 5329e07a6f50bff44c5c034d5aeee13187c9b242 (diff) | |
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)
| -rw-r--r-- | sys/amd64/conf/GENERIC | 2 | ||||
| -rw-r--r-- | sys/amd64/conf/MINIMAL | 2 | ||||
| -rw-r--r-- | sys/powerpc/conf/MPC85XX | 2 | ||||
| -rw-r--r-- | 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 |
