random: TPM_HARVEST should have been named RANDOM_ENABLE_TPM

* Enable RANDOM_ENABLE_TPM by default

* The commit of TPM_HARVEST failed to add it to NOTES
  so that the LINT kernel would build the code.

Fixes: 4ee7d3b011
Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D53460
This commit is contained in:
David E. O'Brien 2025-10-27 20:53:43 -07:00
parent abd53b16c0
commit 3deb21f1af
9 changed files with 31 additions and 7 deletions

View file

@ -30,6 +30,7 @@
.Sh SYNOPSIS
.Cd "options RANDOM_LOADABLE"
.Cd "options RANDOM_ENABLE_ETHER"
.Cd "options RANDOM_ENABLE_TPM"
.Cd "options RANDOM_ENABLE_UMA"
.Sh DESCRIPTION
The

View file

@ -309,7 +309,6 @@ device wpi # Intel 3945ABG wireless NICs.
device crypto # core crypto support
device aesni # AES-NI OpenCrypto module
device loop # Network loopback
device rdrand_rng # Intel Bull Mountain RNG
device ether # Ethernet support
device vlan # 802.1Q VLAN support
device tuntap # Packet tunnel.
@ -323,6 +322,11 @@ device xz # lzma decompression
# Note that 'bpf' is required for DHCP.
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
# USB support
options USB_DEBUG # enable debug msgs
device uhci # UHCI PCI->USB interface

View file

@ -113,7 +113,6 @@ device uart # Generic UART driver
# Pseudo devices.
device loop # Network loopback
device rdrand_rng # Intel Bull Mountain RNG
device ether # Ethernet support
# The `bpf' device enables the Berkeley Packet Filter.
@ -121,6 +120,11 @@ device ether # Ethernet support
# Note that 'bpf' is required for DHCP.
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
# VirtIO support
device virtio # Generic VirtIO bus (required)
device virtio_pci # VirtIO PCI device

View file

@ -216,6 +216,10 @@ device ffec # Freescale Fast Ethernet Controller
device neta # Marvell 10/100/1000 Network controller
device smsc # SMSC LAN91C111
# random(4)
device tpm # Trusted Platform Module
options RANDOM_ENABLE_TPM # enable entropy from TPM 2.0
# Sound support
device sound

View file

@ -106,3 +106,7 @@ device efirtc # EFI RTC
# SMBIOS -- all EFI platforms
device smbios
# random(4)
device tpm # Trusted Platform Module
options RANDOM_ENABLE_TPM # enable entropy from TPM 2.0

View file

@ -2825,6 +2825,8 @@ options RANDOM_ENABLE_UMA # slab allocator
# environment.
options RANDOM_ENABLE_ETHER # ether_input
options RANDOM_ENABLE_TPM # implies TPM_HARVEST
# Module to enable execution of application via emulators like QEMU
options IMGACT_BINMISC

View file

@ -956,6 +956,7 @@ RANDOM_LOADABLE opt_global.h
# the uma slab allocator.
RANDOM_ENABLE_UMA opt_global.h
RANDOM_ENABLE_ETHER opt_global.h
RANDOM_ENABLE_TPM opt_global.h
# This options turns TPM into entropy source.
TPM_HARVEST opt_tpm.h

View file

@ -42,7 +42,7 @@
MALLOC_DEFINE(M_TPM20, "tpm_buffer", "buffer for tpm 2.0 driver");
static void tpm20_discard_buffer(void *arg);
#ifdef TPM_HARVEST
#if defined TPM_HARVEST || defined RANDOM_ENABLE_TPM
static void tpm20_harvest(void *arg, int unused);
#endif
static int tpm20_save_state(device_t dev, bool suspend);
@ -184,7 +184,7 @@ tpm20_ioctl(struct cdev *dev, u_long cmd, caddr_t data,
return (ENOTTY);
}
#ifdef TPM_HARVEST
#if defined TPM_HARVEST || defined RANDOM_ENABLE_TPM
static const struct random_source random_tpm = {
.rs_ident = "TPM",
.rs_source = RANDOM_PURE_TPM,
@ -212,7 +212,7 @@ tpm20_init(struct tpm_sc *sc)
if (result != 0)
tpm20_release(sc);
#ifdef TPM_HARVEST
#if defined TPM_HARVEST || defined RANDOM_ENABLE_TPM
random_source_register(&random_tpm);
TIMEOUT_TASK_INIT(taskqueue_thread, &sc->harvest_task, 0,
tpm20_harvest, sc);
@ -227,7 +227,7 @@ void
tpm20_release(struct tpm_sc *sc)
{
#ifdef TPM_HARVEST
#if defined TPM_HARVEST || defined RANDOM_ENABLE_TPM
if (device_is_attached(sc->dev))
taskqueue_drain_timeout(taskqueue_thread, &sc->harvest_task);
random_source_deregister(&random_tpm);
@ -254,7 +254,7 @@ tpm20_shutdown(device_t dev)
return (tpm20_save_state(dev, false));
}
#ifdef TPM_HARVEST
#if defined TPM_HARVEST || defined RANDOM_ENABLE_TPM
/*
* Get TPM_HARVEST_SIZE random bytes and add them
* into system entropy pool.

View file

@ -204,6 +204,10 @@ options FDT
device iicbus # Bus support, required for iicoc below.
device iicoc # OpenCores I2C controller support
# random(4)
device tpm # Trusted Platform Module
options RANDOM_ENABLE_TPM # enable entropy from TPM 2.0
# Include SoC specific configuration
include "std.allwinner"
include "std.cvitek"