drm/rockchip: Don't change hdmi reference clock rate
[drm/drm-misc.git] / drivers / char / hw_random / Kconfig
blob17854f052386efa0cf3e4c83d60dd9d6d64755ea
1 # SPDX-License-Identifier: GPL-2.0-only
3 # Hardware Random Number Generator (RNG) configuration
6 menuconfig HW_RANDOM
7         tristate "Hardware Random Number Generator Core support"
8         default m
9         help
10           Hardware Random Number Generator Core infrastructure.
12           To compile this driver as a module, choose M here: the
13           module will be called rng-core.  This provides a device
14           that's usually called /dev/hwrng, and which exposes one
15           of possibly several hardware random number generators.
17           These hardware random number generators do feed into the
18           kernel's random number generator entropy pool.
20           If unsure, say Y.
22 if HW_RANDOM
24 config HW_RANDOM_TIMERIOMEM
25         tristate "Timer IOMEM HW Random Number Generator support"
26         depends on HAS_IOMEM
27         help
28           This driver provides kernel-side support for a generic Random
29           Number Generator used by reading a 'dumb' iomem address that
30           is to be read no faster than, for example, once a second;
31           the default FPGA bitstream on the TS-7800 has such functionality.
33           To compile this driver as a module, choose M here: the
34           module will be called timeriomem-rng.
36           If unsure, say Y.
38 config HW_RANDOM_INTEL
39         tristate "Intel HW Random Number Generator support"
40         depends on (X86 || COMPILE_TEST) && PCI
41         default HW_RANDOM
42         help
43           This driver provides kernel-side support for the Random Number
44           Generator hardware found on Intel i8xx-based motherboards.
46           To compile this driver as a module, choose M here: the
47           module will be called intel-rng.
49           If unsure, say Y.
51 config HW_RANDOM_AMD
52         tristate "AMD HW Random Number Generator support"
53         depends on (X86 || COMPILE_TEST)
54         depends on PCI && HAS_IOPORT_MAP
55         default HW_RANDOM
56         help
57           This driver provides kernel-side support for the Random Number
58           Generator hardware found on AMD 76x-based motherboards.
60           To compile this driver as a module, choose M here: the
61           module will be called amd-rng.
63           If unsure, say Y.
65 config HW_RANDOM_AIROHA
66         tristate "Airoha True HW Random Number Generator support"
67         depends on ARCH_AIROHA || COMPILE_TEST
68         default HW_RANDOM
69         help
70           This driver provides kernel-side support for the True Random Number
71           Generator hardware found on Airoha SoC.
73           To compile this driver as a module, choose M here: the
74           module will be called airoha-rng.
76           If unsure, say Y.
78 config HW_RANDOM_ATMEL
79         tristate "Atmel Random Number Generator support"
80         depends on (ARCH_AT91 || COMPILE_TEST)
81         default HW_RANDOM
82         help
83           This driver provides kernel-side support for the Random Number
84           Generator hardware found on Atmel AT91 devices.
86           To compile this driver as a module, choose M here: the
87           module will be called atmel-rng.
89           If unsure, say Y.
91 config HW_RANDOM_BA431
92         tristate "Silex Insight BA431 Random Number Generator support"
93         depends on HAS_IOMEM
94         help
95           This driver provides kernel-side support for the Random Number
96           Generator hardware based on Silex Insight BA431 IP.
98           To compile this driver as a module, choose M here: the
99           module will be called ba431-rng.
101 config HW_RANDOM_BCM2835
102         tristate "Broadcom BCM2835/BCM63xx Random Number Generator support"
103         depends on ARCH_BCM2835 || ARCH_BCM_NSP || ARCH_BCM_5301X || \
104                    ARCH_BCMBCA || BCM63XX || BMIPS_GENERIC || COMPILE_TEST
105         default HW_RANDOM
106         help
107           This driver provides kernel-side support for the Random Number
108           Generator hardware found on the Broadcom BCM2835 and BCM63xx SoCs.
110           To compile this driver as a module, choose M here: the
111           module will be called bcm2835-rng
113           If unsure, say Y.
115 config HW_RANDOM_BCM74110
116         tristate "Broadcom BCM74110 Random Number Generator support"
117         depends on ARCH_BRCMSTB || COMPILE_TEST
118         default HW_RANDOM
119         help
120           This driver provides kernel-side support for the Random Number
121           Generator hardware found on the Broadcom BCM74110 SoCs.
123           To compile this driver as a module, choose M here: the
124           module will be called bcm74110-rng
126           If unsure, say Y.
128 config HW_RANDOM_IPROC_RNG200
129         tristate "Broadcom iProc/STB RNG200 support"
130         depends on ARCH_BCM_IPROC || ARCH_BCM2835 || ARCH_BCMBCA || ARCH_BRCMSTB || COMPILE_TEST
131         default HW_RANDOM
132         help
133           This driver provides kernel-side support for the RNG200
134           hardware found on the Broadcom iProc and STB SoCs.
136           To compile this driver as a module, choose M here: the
137           module will be called iproc-rng200
139           If unsure, say Y.
141 config HW_RANDOM_GEODE
142         tristate "AMD Geode HW Random Number Generator support"
143         depends on (X86_32 || COMPILE_TEST)
144         depends on PCI
145         default HW_RANDOM
146         help
147           This driver provides kernel-side support for the Random Number
148           Generator hardware found on the AMD Geode LX.
150           To compile this driver as a module, choose M here: the
151           module will be called geode-rng.
153           If unsure, say Y.
155 config HW_RANDOM_N2RNG
156         tristate "Niagara2 Random Number Generator support"
157         depends on SPARC64
158         default HW_RANDOM
159         help
160           This driver provides kernel-side support for the Random Number
161           Generator hardware found on Niagara2 cpus.
163           To compile this driver as a module, choose M here: the
164           module will be called n2-rng.
166           If unsure, say Y.
168 config HW_RANDOM_VIA
169         tristate "VIA HW Random Number Generator support"
170         depends on X86
171         default HW_RANDOM
172         help
173           This driver provides kernel-side support for the Random Number
174           Generator hardware found on VIA based motherboards.
176           To compile this driver as a module, choose M here: the
177           module will be called via-rng.
179           If unsure, say Y.
181 config HW_RANDOM_IXP4XX
182         tristate "Intel IXP4xx NPU HW Pseudo-Random Number Generator support"
183         depends on ARCH_IXP4XX || COMPILE_TEST
184         default HW_RANDOM
185         help
186           This driver provides kernel-side support for the Pseudo-Random
187           Number Generator hardware found on the Intel IXP45x/46x NPU.
189           To compile this driver as a module, choose M here: the
190           module will be called ixp4xx-rng.
192           If unsure, say Y.
194 config HW_RANDOM_OMAP
195         tristate "OMAP Random Number Generator support"
196         depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS || ARCH_MVEBU || ARCH_K3 || COMPILE_TEST
197         default HW_RANDOM
198         help
199           This driver provides kernel-side support for the Random Number
200           Generator hardware found on OMAP16xx, OMAP2/3/4/5, AM33xx/AM43xx
201           multimedia processors, and Marvell Armada 7k/8k SoCs.
203           To compile this driver as a module, choose M here: the
204           module will be called omap-rng.
206           If unsure, say Y.
208 config HW_RANDOM_OMAP3_ROM
209         tristate "OMAP3 ROM Random Number Generator support"
210         depends on ARCH_OMAP3 || COMPILE_TEST
211         default HW_RANDOM
212         help
213           This driver provides kernel-side support for the Random Number
214           Generator hardware found on OMAP34xx processors.
216           To compile this driver as a module, choose M here: the
217           module will be called omap3-rom-rng.
219           If unsure, say Y.
221 config HW_RANDOM_OCTEON
222         tristate "Octeon Random Number Generator support"
223         depends on CAVIUM_OCTEON_SOC
224         default HW_RANDOM
225         help
226           This driver provides kernel-side support for the Random Number
227           Generator hardware found on Octeon processors.
229           To compile this driver as a module, choose M here: the
230           module will be called octeon-rng.
232           If unsure, say Y.
234 config HW_RANDOM_PASEMI
235         tristate "PA Semi HW Random Number Generator support"
236         depends on PPC_PASEMI || (PPC && COMPILE_TEST)
237         default HW_RANDOM
238         help
239           This driver provides kernel-side support for the Random Number
240           Generator hardware found on PA Semi PWRficient SoCs.
242           To compile this driver as a module, choose M here: the
243           module will be called pasemi-rng.
245           If unsure, say Y.
247 config HW_RANDOM_VIRTIO
248         tristate "VirtIO Random Number Generator support"
249         depends on VIRTIO
250         help
251           This driver provides kernel-side support for the virtual Random Number
252           Generator hardware.
254           To compile this driver as a module, choose M here: the
255           module will be called virtio-rng.  If unsure, say N.
257 config HW_RANDOM_MXC_RNGA
258         tristate "Freescale i.MX RNGA Random Number Generator"
259         depends on SOC_IMX31 || COMPILE_TEST
260         default HW_RANDOM
261         help
262           This driver provides kernel-side support for the Random Number
263           Generator hardware found on Freescale i.MX processors.
265           To compile this driver as a module, choose M here: the
266           module will be called mxc-rnga.
268           If unsure, say Y.
270 config HW_RANDOM_IMX_RNGC
271         tristate "Freescale i.MX RNGC Random Number Generator"
272         depends on HAS_IOMEM
273         depends on SOC_IMX25 || SOC_IMX6SL || SOC_IMX6SLL || SOC_IMX6UL || COMPILE_TEST
274         default HW_RANDOM
275         help
276           This driver provides kernel-side support for the Random Number
277           Generator Version C hardware found on some Freescale i.MX
278           processors. Version B is also supported by this driver.
280           To compile this driver as a module, choose M here: the
281           module will be called imx-rngc.
283           If unsure, say Y.
285 config HW_RANDOM_INGENIC_RNG
286         tristate "Ingenic Random Number Generator support"
287         depends on MACH_JZ4780 || MACH_X1000 || COMPILE_TEST
288         default HW_RANDOM
289         help
290           This driver provides kernel-side support for the Random Number Generator
291           hardware found in ingenic JZ4780 and X1000 SoC. MIPS Creator CI20 uses
292           JZ4780 SoC, YSH & ATIL CU1000-Neo uses X1000 SoC.
294           To compile this driver as a module, choose M here: the
295           module will be called ingenic-rng.
297           If unsure, say Y.
299 config HW_RANDOM_INGENIC_TRNG
300         tristate "Ingenic True Random Number Generator support"
301         depends on MACH_X1830 || COMPILE_TEST
302         default HW_RANDOM
303         help
304           This driver provides kernel-side support for the True Random Number Generator
305           hardware found in ingenic X1830 SoC. YSH & ATIL CU1830-Neo uses X1830 SoC.
307           To compile this driver as a module, choose M here: the
308           module will be called ingenic-trng.
310           If unsure, say Y.
312 config HW_RANDOM_NOMADIK
313         tristate "ST-Ericsson Nomadik Random Number Generator support"
314         depends on ARCH_NOMADIK || COMPILE_TEST
315         default HW_RANDOM
316         help
317           This driver provides kernel-side support for the Random Number
318           Generator hardware found on ST-Ericsson SoCs (8815 and 8500).
320           To compile this driver as a module, choose M here: the
321           module will be called nomadik-rng.
323           If unsure, say Y.
325 config HW_RANDOM_PSERIES
326         tristate "pSeries HW Random Number Generator support"
327         depends on PPC64 && IBMVIO
328         default HW_RANDOM
329         help
330           This driver provides kernel-side support for the Random Number
331           Generator hardware found on POWER7+ machines and above
333           To compile this driver as a module, choose M here: the
334           module will be called pseries-rng.
336           If unsure, say Y.
338 config HW_RANDOM_POWERNV
339         tristate "PowerNV Random Number Generator support"
340         depends on PPC_POWERNV
341         default HW_RANDOM
342         help
343           This is the driver for Random Number Generator hardware found
344           in POWER7+ and above machines for PowerNV platform.
346           To compile this driver as a module, choose M here: the
347           module will be called powernv-rng.
349           If unsure, say Y.
351 config HW_RANDOM_HISI
352         tristate "Hisilicon Random Number Generator support"
353         depends on ARCH_HISI || COMPILE_TEST
354         default HW_RANDOM
355         help
356           This driver provides kernel-side support for the Random Number
357           Generator hardware found on Hisilicon Hip04 and Hip05 SoC.
359           To compile this driver as a module, choose M here: the
360           module will be called hisi-rng.
362           If unsure, say Y.
364 config HW_RANDOM_HISTB
365         tristate "Hisilicon STB Random Number Generator support"
366         depends on ARCH_HISI || COMPILE_TEST
367         default ARCH_HISI
368         help
369           This driver provides kernel-side support for the Random Number
370           Generator hardware found on Hisilicon Hi37xx SoC.
372           To compile this driver as a module, choose M here: the
373           module will be called histb-rng.
375 config HW_RANDOM_ST
376         tristate "ST Microelectronics HW Random Number Generator support"
377         depends on ARCH_STI || COMPILE_TEST
378         help
379           This driver provides kernel-side support for the Random Number
380           Generator hardware found on STi series of SoCs.
382           To compile this driver as a module, choose M here: the
383           module will be called st-rng.
385 config HW_RANDOM_XGENE
386         tristate "APM X-Gene True Random Number Generator (TRNG) support"
387         depends on ARCH_XGENE || COMPILE_TEST
388         default HW_RANDOM
389         help
390           This driver provides kernel-side support for the Random Number
391           Generator hardware found on APM X-Gene SoC.
393           To compile this driver as a module, choose M here: the
394           module will be called xgene_rng.
396           If unsure, say Y.
398 config HW_RANDOM_STM32
399         tristate "STMicroelectronics STM32 random number generator"
400         depends on ARCH_STM32 || COMPILE_TEST
401         depends on HAS_IOMEM
402         default HW_RANDOM
403         help
404           This driver provides kernel-side support for the Random Number
405           Generator hardware found on STM32 microcontrollers.
407           To compile this driver as a module, choose M here: the
408           module will be called stm32-rng.
410           If unsure, say N.
412 config HW_RANDOM_PIC32
413         tristate "Microchip PIC32 Random Number Generator support"
414         depends on MACH_PIC32 || COMPILE_TEST
415         default HW_RANDOM if MACH_PIC32
416         help
417           This driver provides kernel-side support for the Random Number
418           Generator hardware found on a PIC32.
420           To compile this driver as a module, choose M here. the
421           module will be called pic32-rng.
423           If unsure, say Y.
425 config HW_RANDOM_POLARFIRE_SOC
426         tristate "Microchip PolarFire SoC Random Number Generator support"
427         depends on HW_RANDOM && POLARFIRE_SOC_SYS_CTRL
428         help
429           This driver provides kernel-side support for the Random Number
430           Generator hardware found on PolarFire SoC (MPFS).
432           To compile this driver as a module, choose M here. The
433           module will be called mfps_rng.
435           If unsure, say N.
438 config HW_RANDOM_MESON
439         tristate "Amlogic Meson Random Number Generator support"
440         depends on ARCH_MESON || COMPILE_TEST
441         depends on HAS_IOMEM && OF
442         default HW_RANDOM if ARCH_MESON
443         help
444           This driver provides kernel-side support for the Random Number
445           Generator hardware found on Amlogic Meson SoCs.
447           To compile this driver as a module, choose M here. the
448           module will be called meson-rng.
450           If unsure, say Y.
452 config HW_RANDOM_CAVIUM
453         tristate "Cavium ThunderX Random Number Generator support"
454         depends on PCI
455         depends on ARCH_THUNDER || (ARM64 && COMPILE_TEST)
456         default HW_RANDOM
457         help
458           This driver provides kernel-side support for the Random Number
459           Generator hardware found on Cavium SoCs.
461           To compile this driver as a module, choose M here: the
462           module will be called cavium_rng.
464           If unsure, say Y.
466 config HW_RANDOM_MTK
467         tristate "Mediatek Random Number Generator support"
468         depends on ARCH_MEDIATEK || COMPILE_TEST
469         depends on HAS_IOMEM && OF
470         default HW_RANDOM if ARCH_MEDIATEK
471         help
472           This driver provides kernel-side support for the Random Number
473           Generator hardware found on Mediatek SoCs.
475           To compile this driver as a module, choose M here. the
476           module will be called mtk-rng.
478           If unsure, say Y.
480 config HW_RANDOM_S390
481         tristate "S390 True Random Number Generator support"
482         depends on S390
483         default HW_RANDOM
484         help
485           This driver provides kernel-side support for the True
486           Random Number Generator available as CPACF extension
487           on modern s390 hardware platforms.
489           To compile this driver as a module, choose M here: the
490           module will be called s390-trng.
492           If unsure, say Y.
494 config HW_RANDOM_EXYNOS
495         tristate "Samsung Exynos True Random Number Generator support"
496         depends on ARCH_EXYNOS || COMPILE_TEST
497         depends on HAS_IOMEM
498         default HW_RANDOM if ARCH_EXYNOS
499         help
500           This driver provides support for the True Random Number
501           Generator available in Exynos SoCs.
503           To compile this driver as a module, choose M here: the module
504           will be called exynos-trng.
506           If unsure, say Y.
508 config HW_RANDOM_OPTEE
509         tristate "OP-TEE based Random Number Generator support"
510         depends on OPTEE
511         default HW_RANDOM
512         help
513           This  driver provides support for OP-TEE based Random Number
514           Generator on ARM SoCs where hardware entropy sources are not
515           accessible to normal world (Linux).
517           To compile this driver as a module, choose M here: the module
518           will be called optee-rng.
520           If unsure, say Y.
522 config HW_RANDOM_NPCM
523         tristate "NPCM Random Number Generator support"
524         depends on ARCH_NPCM || COMPILE_TEST
525         depends on HAS_IOMEM
526         default HW_RANDOM if ARCH_NPCM
527         help
528           This driver provides support for the Random Number
529           Generator hardware available in Nuvoton NPCM SoCs.
531           To compile this driver as a module, choose M here: the
532           module will be called npcm-rng.
534           If unsure, say Y.
536 config HW_RANDOM_KEYSTONE
537         depends on ARCH_KEYSTONE || COMPILE_TEST
538         depends on HAS_IOMEM && OF
539         default HW_RANDOM
540         tristate "TI Keystone NETCP SA Hardware random number generator"
541         help
542           This option enables Keystone's hardware random generator.
544 config HW_RANDOM_CCTRNG
545         tristate "Arm CryptoCell True Random Number Generator support"
546         depends on HAS_IOMEM && OF
547         help
548           Say 'Y' to enable the True Random Number Generator driver for the
549           Arm TrustZone CryptoCell family of processors.
550           Currently the CryptoCell 713 and 703 are supported.
551           The driver is supported only in SoC where Trusted Execution
552           Environment is not used.
553           Choose 'M' to compile this driver as a module. The module
554           will be called cctrng.
555           If unsure, say 'N'.
557 config HW_RANDOM_XIPHERA
558         tristate "Xiphera FPGA based True Random Number Generator support"
559         depends on HAS_IOMEM
560         help
561           This driver provides kernel-side support for Xiphera True Random
562           Number Generator Intellectual Property Core.
564           To compile this driver as a module, choose M here: the
565           module will be called xiphera-trng.
567 config HW_RANDOM_ARM_SMCCC_TRNG
568         tristate "Arm SMCCC TRNG firmware interface support"
569         depends on HAVE_ARM_SMCCC_DISCOVERY
570         default HW_RANDOM
571         help
572           Say 'Y' to enable the True Random Number Generator driver using
573           the Arm SMCCC TRNG firmware interface. This reads entropy from
574           higher exception levels (firmware, hypervisor). Uses SMCCC for
575           communicating with the firmware:
576           https://developer.arm.com/documentation/den0098/latest/
578           To compile this driver as a module, choose M here: the
579           module will be called arm_smccc_trng.
581 config HW_RANDOM_CN10K
582        tristate "Marvell CN10K Random Number Generator support"
583        depends on HW_RANDOM && PCI && (ARM64 || (64BIT && COMPILE_TEST))
584        default HW_RANDOM if ARCH_THUNDER
585        help
586          This driver provides support for the True Random Number
587          generator available in Marvell CN10K SoCs.
589          To compile this driver as a module, choose M here.
590          The module will be called cn10k_rng. If unsure, say Y.
592 config HW_RANDOM_JH7110
593         tristate "StarFive JH7110 Random Number Generator support"
594         depends on SOC_STARFIVE || COMPILE_TEST
595         help
596           This driver provides support for the True Random Number
597           Generator in StarFive JH7110 SoCs.
599           To compile this driver as a module, choose M here.
600           The module will be called jh7110-trng.
602 config HW_RANDOM_ROCKCHIP
603         tristate "Rockchip True Random Number Generator"
604         depends on HW_RANDOM && (ARCH_ROCKCHIP || COMPILE_TEST)
605         depends on HAS_IOMEM
606         default HW_RANDOM
607         help
608           This driver provides kernel-side support for the True Random Number
609           Generator hardware found on some Rockchip SoC like RK3566 or RK3568.
611           To compile this driver as a module, choose M here: the
612           module will be called rockchip-rng.
614           If unsure, say Y.
616 endif # HW_RANDOM
618 config UML_RANDOM
619         depends on UML
620         select HW_RANDOM
621         tristate "UML Random Number Generator support"
622         help
623           This option enables UML's "hardware" random number generator.  It
624           attaches itself to the host's /dev/random, supplying as much entropy
625           as the host has, rather than the small amount the UML gets from its
626           own drivers. It registers itself as a rng-core driver thus providing
627           a device which is usually called /dev/hwrng. This hardware random
628           number generator does feed into the kernel's random number generator
629           entropy pool.
631           If unsure, say Y.