mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
542 lines
16 KiB
542 lines
16 KiB
# SPDX-License-Identifier: GPL-2.0-only |
|
# |
|
# Hardware Random Number Generator (RNG) configuration |
|
# |
|
|
|
menuconfig HW_RANDOM |
|
tristate "Hardware Random Number Generator Core support" |
|
default m |
|
help |
|
Hardware Random Number Generator Core infrastructure. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called rng-core. This provides a device |
|
that's usually called /dev/hwrng, and which exposes one |
|
of possibly several hardware random number generators. |
|
|
|
These hardware random number generators do feed into the |
|
kernel's random number generator entropy pool. |
|
|
|
If unsure, say Y. |
|
|
|
if HW_RANDOM |
|
|
|
config HW_RANDOM_TIMERIOMEM |
|
tristate "Timer IOMEM HW Random Number Generator support" |
|
depends on HAS_IOMEM |
|
help |
|
This driver provides kernel-side support for a generic Random |
|
Number Generator used by reading a 'dumb' iomem address that |
|
is to be read no faster than, for example, once a second; |
|
the default FPGA bitstream on the TS-7800 has such functionality. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called timeriomem-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_INTEL |
|
tristate "Intel HW Random Number Generator support" |
|
depends on (X86 || IA64) && PCI |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on Intel i8xx-based motherboards. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called intel-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_AMD |
|
tristate "AMD HW Random Number Generator support" |
|
depends on (X86 || PPC_MAPLE) && PCI |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on AMD 76x-based motherboards. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called amd-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_ATMEL |
|
tristate "Atmel Random Number Generator support" |
|
depends on ARCH_AT91 && HAVE_CLK && OF |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on Atmel AT91 devices. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called atmel-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_BA431 |
|
tristate "Silex Insight BA431 Random Number Generator support" |
|
depends on HAS_IOMEM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware based on Silex Insight BA431 IP. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called ba431-rng. |
|
|
|
config HW_RANDOM_BCM2835 |
|
tristate "Broadcom BCM2835/BCM63xx Random Number Generator support" |
|
depends on ARCH_BCM2835 || ARCH_BCM_NSP || ARCH_BCM_5301X || \ |
|
ARCH_BCM_63XX || BCM63XX || BMIPS_GENERIC |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on the Broadcom BCM2835 and BCM63xx SoCs. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called bcm2835-rng |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_IPROC_RNG200 |
|
tristate "Broadcom iProc/STB RNG200 support" |
|
depends on ARCH_BCM_IPROC || ARCH_BCM2835 || ARCH_BRCMSTB |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the RNG200 |
|
hardware found on the Broadcom iProc, BCM2711 and STB SoCs. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called iproc-rng200 |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_GEODE |
|
tristate "AMD Geode HW Random Number Generator support" |
|
depends on X86_32 && PCI |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on the AMD Geode LX. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called geode-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_N2RNG |
|
tristate "Niagara2 Random Number Generator support" |
|
depends on SPARC64 |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on Niagara2 cpus. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called n2-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_VIA |
|
tristate "VIA HW Random Number Generator support" |
|
depends on X86 |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on VIA based motherboards. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called via-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_IXP4XX |
|
tristate "Intel IXP4xx NPU HW Pseudo-Random Number Generator support" |
|
depends on ARCH_IXP4XX |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Pseudo-Random |
|
Number Generator hardware found on the Intel IXP45x/46x NPU. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called ixp4xx-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_OMAP |
|
tristate "OMAP Random Number Generator support" |
|
depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS || ARCH_MVEBU |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on OMAP16xx, OMAP2/3/4/5, AM33xx/AM43xx |
|
multimedia processors, and Marvell Armada 7k/8k SoCs. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called omap-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_OMAP3_ROM |
|
tristate "OMAP3 ROM Random Number Generator support" |
|
depends on ARCH_OMAP3 |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on OMAP34xx processors. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called omap3-rom-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_OCTEON |
|
tristate "Octeon Random Number Generator support" |
|
depends on CAVIUM_OCTEON_SOC |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on Octeon processors. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called octeon-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_PASEMI |
|
tristate "PA Semi HW Random Number Generator support" |
|
depends on PPC_PASEMI |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on PA Semi PWRficient SoCs. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called pasemi-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_VIRTIO |
|
tristate "VirtIO Random Number Generator support" |
|
depends on VIRTIO |
|
help |
|
This driver provides kernel-side support for the virtual Random Number |
|
Generator hardware. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called virtio-rng. If unsure, say N. |
|
|
|
config HW_RANDOM_TX4939 |
|
tristate "TX4939 Random Number Generator support" |
|
depends on SOC_TX4939 |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on TX4939 SoC. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called tx4939-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_MXC_RNGA |
|
tristate "Freescale i.MX RNGA Random Number Generator" |
|
depends on SOC_IMX31 |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on Freescale i.MX processors. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called mxc-rnga. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_IMX_RNGC |
|
tristate "Freescale i.MX RNGC Random Number Generator" |
|
depends on HAS_IOMEM && HAVE_CLK |
|
depends on SOC_IMX25 || SOC_IMX6SL || SOC_IMX6SLL || SOC_IMX6UL || COMPILE_TEST |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator Version C hardware found on some Freescale i.MX |
|
processors. Version B is also supported by this driver. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called imx-rngc. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_INGENIC_RNG |
|
tristate "Ingenic Random Number Generator support" |
|
depends on HW_RANDOM |
|
depends on MACH_JZ4780 || MACH_X1000 |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number Generator |
|
hardware found in ingenic JZ4780 and X1000 SoC. MIPS Creator CI20 uses |
|
JZ4780 SoC, YSH & ATIL CU1000-Neo uses X1000 SoC. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called ingenic-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_INGENIC_TRNG |
|
tristate "Ingenic True Random Number Generator support" |
|
depends on HW_RANDOM |
|
depends on MACH_X1830 |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the True Random Number Generator |
|
hardware found in ingenic X1830 SoC. YSH & ATIL CU1830-Neo uses X1830 SoC. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called ingenic-trng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_NOMADIK |
|
tristate "ST-Ericsson Nomadik Random Number Generator support" |
|
depends on ARCH_NOMADIK |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on ST-Ericsson SoCs (8815 and 8500). |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called nomadik-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_PSERIES |
|
tristate "pSeries HW Random Number Generator support" |
|
depends on PPC64 && IBMVIO |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on POWER7+ machines and above |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called pseries-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_POWERNV |
|
tristate "PowerNV Random Number Generator support" |
|
depends on PPC_POWERNV |
|
default HW_RANDOM |
|
help |
|
This is the driver for Random Number Generator hardware found |
|
in POWER7+ and above machines for PowerNV platform. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called powernv-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_HISI |
|
tristate "Hisilicon Random Number Generator support" |
|
depends on HW_RANDOM && ARCH_HISI |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on Hisilicon Hip04 and Hip05 SoC. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called hisi-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_ST |
|
tristate "ST Microelectronics HW Random Number Generator support" |
|
depends on HW_RANDOM && ARCH_STI |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on STi series of SoCs. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called st-rng. |
|
|
|
config HW_RANDOM_XGENE |
|
tristate "APM X-Gene True Random Number Generator (TRNG) support" |
|
depends on HW_RANDOM && ARCH_XGENE |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on APM X-Gene SoC. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called xgene_rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_STM32 |
|
tristate "STMicroelectronics STM32 random number generator" |
|
depends on HW_RANDOM && (ARCH_STM32 || COMPILE_TEST) |
|
depends on HAS_IOMEM |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on STM32 microcontrollers. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called stm32-rng. |
|
|
|
If unsure, say N. |
|
|
|
config HW_RANDOM_PIC32 |
|
tristate "Microchip PIC32 Random Number Generator support" |
|
depends on HW_RANDOM && MACH_PIC32 |
|
default y |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on a PIC32. |
|
|
|
To compile this driver as a module, choose M here. the |
|
module will be called pic32-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_MESON |
|
tristate "Amlogic Meson Random Number Generator support" |
|
depends on HW_RANDOM |
|
depends on ARCH_MESON || COMPILE_TEST |
|
default y |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on Amlogic Meson SoCs. |
|
|
|
To compile this driver as a module, choose M here. the |
|
module will be called meson-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_CAVIUM |
|
tristate "Cavium ThunderX Random Number Generator support" |
|
depends on HW_RANDOM && PCI && (ARM64 || (COMPILE_TEST && 64BIT)) |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on Cavium SoCs. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called cavium_rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_MTK |
|
tristate "Mediatek Random Number Generator support" |
|
depends on HW_RANDOM |
|
depends on ARCH_MEDIATEK || COMPILE_TEST |
|
default y |
|
help |
|
This driver provides kernel-side support for the Random Number |
|
Generator hardware found on Mediatek SoCs. |
|
|
|
To compile this driver as a module, choose M here. the |
|
module will be called mtk-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_S390 |
|
tristate "S390 True Random Number Generator support" |
|
depends on S390 |
|
default HW_RANDOM |
|
help |
|
This driver provides kernel-side support for the True |
|
Random Number Generator available as CPACF extension |
|
on modern s390 hardware platforms. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called s390-trng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_EXYNOS |
|
tristate "Samsung Exynos True Random Number Generator support" |
|
depends on ARCH_EXYNOS || COMPILE_TEST |
|
default HW_RANDOM |
|
help |
|
This driver provides support for the True Random Number |
|
Generator available in Exynos SoCs. |
|
|
|
To compile this driver as a module, choose M here: the module |
|
will be called exynos-trng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_OPTEE |
|
tristate "OP-TEE based Random Number Generator support" |
|
depends on OPTEE |
|
default HW_RANDOM |
|
help |
|
This driver provides support for OP-TEE based Random Number |
|
Generator on ARM SoCs where hardware entropy sources are not |
|
accessible to normal world (Linux). |
|
|
|
To compile this driver as a module, choose M here: the module |
|
will be called optee-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_NPCM |
|
tristate "NPCM Random Number Generator support" |
|
depends on ARCH_NPCM || COMPILE_TEST |
|
default HW_RANDOM |
|
help |
|
This driver provides support for the Random Number |
|
Generator hardware available in Nuvoton NPCM SoCs. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called npcm-rng. |
|
|
|
If unsure, say Y. |
|
|
|
config HW_RANDOM_KEYSTONE |
|
depends on ARCH_KEYSTONE || COMPILE_TEST |
|
depends on HAS_IOMEM && OF |
|
default HW_RANDOM |
|
tristate "TI Keystone NETCP SA Hardware random number generator" |
|
help |
|
This option enables Keystone's hardware random generator. |
|
|
|
config HW_RANDOM_CCTRNG |
|
tristate "Arm CryptoCell True Random Number Generator support" |
|
depends on HAS_IOMEM && OF |
|
help |
|
Say 'Y' to enable the True Random Number Generator driver for the |
|
Arm TrustZone CryptoCell family of processors. |
|
Currently the CryptoCell 713 and 703 are supported. |
|
The driver is supported only in SoC where Trusted Execution |
|
Environment is not used. |
|
Choose 'M' to compile this driver as a module. The module |
|
will be called cctrng. |
|
If unsure, say 'N'. |
|
|
|
config HW_RANDOM_XIPHERA |
|
tristate "Xiphera FPGA based True Random Number Generator support" |
|
depends on HAS_IOMEM |
|
help |
|
This driver provides kernel-side support for Xiphera True Random |
|
Number Generator Intellectual Property Core. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called xiphera-trng. |
|
|
|
endif # HW_RANDOM |
|
|
|
config UML_RANDOM |
|
depends on UML |
|
select HW_RANDOM |
|
tristate "UML Random Number Generator support" |
|
help |
|
This option enables UML's "hardware" random number generator. It |
|
attaches itself to the host's /dev/random, supplying as much entropy |
|
as the host has, rather than the small amount the UML gets from its |
|
own drivers. It registers itself as a rng-core driver thus providing |
|
a device which is usually called /dev/hwrng. This hardware random |
|
number generator does feed into the kernel's random number generator |
|
entropy pool. |
|
|
|
If unsure, say Y.
|
|
|