config DM_RNG
	bool "Driver support for Random Number Generator devices"
	depends on DM
	help
	  Enable driver model for random number generator(rng) devices.
	  This interface is used to initialise the rng device and to
	  read the random seed from the device.

config SPL_DM_RNG
	bool "Driver support for Random Number Generator devices in SPL"
	depends on SPL_DM
	help
	  This option is an SPL-variant of the DM_RNG option.
	  See the help of DM_RNG for details.

if DM_RNG

config RNG_MESON
	bool "Amlogic Meson Random Number Generator support"
	depends on ARCH_MESON
	default y
	help
	  Enable support for hardware random number generator
	  of Amlogic Meson SoCs.

config RNG_SANDBOX
	bool "Sandbox random number generator"
	depends on SANDBOX
	default y
	help
	  Enable random number generator for sandbox. This is an
	  emulation of a rng device.

config RNG_MSM
	bool "Qualcomm SoCs Random Number Generator support"
	depends on DM_RNG
	help
	  This driver provides support for the Random Number
	  Generator hardware found on Qualcomm SoCs.

config RNG_NPCM
	bool "Nuvoton NPCM SoCs Random Number Generator support"
	depends on DM_RNG
	help
	  Enable random number generator on NPCM SoCs.
	  This unit can provide 750 to 1000 random bits per second

config RNG_OPTEE
	bool "OP-TEE based Random Number Generator support"
	depends on DM_RNG && OPTEE
	default y if OPTEE_SERVICE_DISCOVERY
	help
	  This driver provides support for the OP-TEE based Random Number
	  Generator on ARM SoCs where hardware entropy sources are not
	  accessible to normal world but reserved and used by the OP-TEE
	  to avoid the weakness of a software PRNG.

config RNG_RISCV_ZKR
	bool "RISC-V Zkr random number generator"
	depends on RISCV_SMODE
	help
	  This driver provides a Random Number Generator based on the
	  Zkr RISC-V ISA extension which provides an interface to an
	  NIST SP 800-90B or BSI AIS-31 compliant physical entropy source.

config RNG_STM32
	bool "Enable random number generator for STM32"
	depends on ARCH_STM32 || ARCH_STM32MP
	help
	  Enable STM32 rng driver.

config RNG_ROCKCHIP
	bool "Enable random number generator for rockchip crypto rng"
	depends on ARCH_ROCKCHIP && DM_RNG
	help
	  Enable random number generator for rockchip. This driver
	  supports the rng module of crypto v1, crypto v2, and the
	  trng module of the rk3588 series.

config RNG_IPROC200
	bool "Broadcom iProc RNG200 random number generator"
	depends on DM_RNG
	help
	  Enable random number generator for RPI4.

config RNG_SMCCC_TRNG
	bool "Arm SMCCC TRNG interface"
	depends on DM_RNG && ARM_PSCI_FW
	default y if ARM_SMCCC_FEATURES
	help
	  Enable random number generator for platforms that support Arm
	  SMCCC TRNG interface.

config RNG_ARM_RNDR
	bool "Generic ARMv8.5 RNDR register"
	depends on DM_RNG && ARM64
	help
	  Use the ARMv8.5 RNDR register to provide random numbers.

config TPM_RNG
	bool "Enable random number generator on TPM device"
	depends on TPM
	default y
	help
	  The TPM device has an inbuilt random number generator
	  functionality. Enable random number generator on TPM
	  devices.

config RNG_JH7110
	bool "StarFive JH7110 Random Number Generator support"
	depends on DM_RNG && STARFIVE_JH7110
	help
	  Enable True Random Number Generator in StarFive JH7110 SoCs.

config RNG_TURRIS_RWTM
	bool "Turris Mox TRNG in Secure Processor"
	depends on DM_RNG && ARMADA_3700
	help
	  Use TRNG in Turris Mox Secure Processor Firmware. Can be used
	  on other Armada-3700 devices (like EspressoBin) if Secure
	  Firmware from CZ.NIC is used.

config RNG_EXYNOS
	bool "Samsung Exynos True Random Number Generator support"
	depends on DM_RNG
	help
	  Enable support for True Random Number Generator (TRNG) available on
	  Exynos SoCs.

	  On some chips (like Exynos850) TRNG registers are protected with TZPC
	  (TrustZone Protection Control). For such chips the driver provides an
	  implementation based on SMC calls to EL3 monitor program. In that
	  case the LDFW (Loadable Firmware) has to be loaded first, as it
	  actually implements TRNG SMC calls.

endif
