2 # Hardware Random Number Generator (RNG) configuration
6 tristate "Hardware Random Number Generator Core support"
9 Hardware Random Number Generator Core infrastructure.
11 To compile this driver as a module, choose M here: the
12 module will be called rng-core. This provides a device
13 that's usually called /dev/hw_random, and which exposes one
14 of possibly several hardware random number generators.
16 These hardware random number generators do not feed directly
17 into the kernel's random number generator. That is usually
18 handled by the "rngd" daemon. Documentation/hw_random.txt
23 config HW_RANDOM_TIMERIOMEM
24 tristate "Timer IOMEM HW Random Number Generator support"
25 depends on HW_RANDOM && HAS_IOMEM
27 This driver provides kernel-side support for a generic Random
28 Number Generator used by reading a 'dumb' iomem address that
29 is to be read no faster than, for example, once a second;
30 the default FPGA bitstream on the TS-7800 has such functionality.
32 To compile this driver as a module, choose M here: the
33 module will be called timeriomem-rng.
37 config HW_RANDOM_INTEL
38 tristate "Intel HW Random Number Generator support"
39 depends on HW_RANDOM && (X86 || IA64) && PCI
42 This driver provides kernel-side support for the Random Number
43 Generator hardware found on Intel i8xx-based motherboards.
45 To compile this driver as a module, choose M here: the
46 module will be called intel-rng.
51 tristate "AMD HW Random Number Generator support"
52 depends on HW_RANDOM && (X86 || PPC_MAPLE) && PCI
55 This driver provides kernel-side support for the Random Number
56 Generator hardware found on AMD 76x-based motherboards.
58 To compile this driver as a module, choose M here: the
59 module will be called amd-rng.
63 config HW_RANDOM_ATMEL
64 tristate "Atmel Random Number Generator support"
65 depends on HW_RANDOM && HAVE_CLK
66 default (HW_RANDOM && ARCH_AT91)
68 This driver provides kernel-side support for the Random Number
69 Generator hardware found on Atmel AT91 devices.
71 To compile this driver as a module, choose M here: the
72 module will be called atmel-rng.
76 config HW_RANDOM_BCM63XX
77 tristate "Broadcom BCM63xx Random Number Generator support"
78 depends on HW_RANDOM && BCM63XX
81 This driver provides kernel-side support for the Random Number
82 Generator hardware found on the Broadcom BCM63xx SoCs.
84 To compile this driver as a module, choose M here: the
85 module will be called bcm63xx-rng
89 config HW_RANDOM_BCM2835
90 tristate "Broadcom BCM2835 Random Number Generator support"
91 depends on HW_RANDOM && ARCH_BCM2835
94 This driver provides kernel-side support for the Random Number
95 Generator hardware found on the Broadcom BCM2835 SoCs.
97 To compile this driver as a module, choose M here: the
98 module will be called bcm2835-rng
102 config HW_RANDOM_GEODE
103 tristate "AMD Geode HW Random Number Generator support"
104 depends on HW_RANDOM && X86_32 && PCI
107 This driver provides kernel-side support for the Random Number
108 Generator hardware found on the AMD Geode LX.
110 To compile this driver as a module, choose M here: the
111 module will be called geode-rng.
115 config HW_RANDOM_N2RNG
116 tristate "Niagara2 Random Number Generator support"
117 depends on HW_RANDOM && SPARC64
120 This driver provides kernel-side support for the Random Number
121 Generator hardware found on Niagara2 cpus.
123 To compile this driver as a module, choose M here: the
124 module will be called n2-rng.
129 tristate "VIA HW Random Number Generator support"
130 depends on HW_RANDOM && X86
133 This driver provides kernel-side support for the Random Number
134 Generator hardware found on VIA based motherboards.
136 To compile this driver as a module, choose M here: the
137 module will be called via-rng.
141 config HW_RANDOM_IXP4XX
142 tristate "Intel IXP4xx NPU HW Pseudo-Random Number Generator support"
143 depends on HW_RANDOM && ARCH_IXP4XX
146 This driver provides kernel-side support for the Pseudo-Random
147 Number Generator hardware found on the Intel IXP45x/46x NPU.
149 To compile this driver as a module, choose M here: the
150 module will be called ixp4xx-rng.
154 config HW_RANDOM_OMAP
155 tristate "OMAP Random Number Generator support"
156 depends on HW_RANDOM && (ARCH_OMAP16XX || ARCH_OMAP2PLUS)
159 This driver provides kernel-side support for the Random Number
160 Generator hardware found on OMAP16xx, OMAP2/3/4/5 and AM33xx/AM43xx
161 multimedia processors.
163 To compile this driver as a module, choose M here: the
164 module will be called omap-rng.
168 config HW_RANDOM_OMAP3_ROM
169 tristate "OMAP3 ROM Random Number Generator support"
170 depends on HW_RANDOM && ARCH_OMAP3
173 This driver provides kernel-side support for the Random Number
174 Generator hardware found on OMAP34xx processors.
176 To compile this driver as a module, choose M here: the
177 module will be called omap3-rom-rng.
181 config HW_RANDOM_OCTEON
182 tristate "Octeon Random Number Generator support"
183 depends on HW_RANDOM && CAVIUM_OCTEON_SOC
186 This driver provides kernel-side support for the Random Number
187 Generator hardware found on Octeon processors.
189 To compile this driver as a module, choose M here: the
190 module will be called octeon-rng.
194 config HW_RANDOM_PASEMI
195 tristate "PA Semi HW Random Number Generator support"
196 depends on HW_RANDOM && PPC_PASEMI
199 This driver provides kernel-side support for the Random Number
200 Generator hardware found on PA Semi PWRficient SoCs.
202 To compile this driver as a module, choose M here: the
203 module will be called pasemi-rng.
207 config HW_RANDOM_VIRTIO
208 tristate "VirtIO Random Number Generator support"
209 depends on HW_RANDOM && VIRTIO
211 This driver provides kernel-side support for the virtual Random Number
214 To compile this driver as a module, choose M here: the
215 module will be called virtio-rng. If unsure, say N.
217 config HW_RANDOM_TX4939
218 tristate "TX4939 Random Number Generator support"
219 depends on HW_RANDOM && SOC_TX4939
222 This driver provides kernel-side support for the Random Number
223 Generator hardware found on TX4939 SoC.
225 To compile this driver as a module, choose M here: the
226 module will be called tx4939-rng.
230 config HW_RANDOM_MXC_RNGA
231 tristate "Freescale i.MX RNGA Random Number Generator"
232 depends on HW_RANDOM && ARCH_HAS_RNGA
234 This driver provides kernel-side support for the Random Number
235 Generator hardware found on Freescale i.MX processors.
237 To compile this driver as a module, choose M here: the
238 module will be called mxc-rnga.
242 config HW_RANDOM_NOMADIK
243 tristate "ST-Ericsson Nomadik Random Number Generator support"
244 depends on HW_RANDOM && ARCH_NOMADIK
246 This driver provides kernel-side support for the Random Number
247 Generator hardware found on ST-Ericsson SoCs (8815 and 8500).
249 To compile this driver as a module, choose M here: the
250 module will be called nomadik-rng.
254 config HW_RANDOM_PICOXCELL
255 tristate "Picochip picoXcell true random number generator support"
256 depends on HW_RANDOM && ARCH_PICOXCELL && PICOXCELL_PC3X3
258 This driver provides kernel-side support for the Random Number
259 Generator hardware found on Picochip PC3x3 and later devices.
261 To compile this driver as a module, choose M here: the
262 module will be called picoxcell-rng.
266 config HW_RANDOM_PPC4XX
267 tristate "PowerPC 4xx generic true random number generator support"
268 depends on HW_RANDOM && PPC && 4xx
270 This driver provides the kernel-side support for the TRNG hardware
271 found in the security function of some PowerPC 4xx SoCs.
273 To compile this driver as a module, choose M here: the
274 module will be called ppc4xx-rng.
280 tristate "Hardware random number generator"
282 This option enables UML's "hardware" random number generator. It
283 attaches itself to the host's /dev/random, supplying as much entropy
284 as the host has, rather than the small amount the UML gets from its
285 own drivers. It registers itself as a standard hardware random number
286 generator, major 10, minor 183, and the canonical device name is
288 The way to make use of this is to install the rng-tools package
289 (check your distro, or download from
290 http://sourceforge.net/projects/gkernel/). rngd periodically reads
291 /dev/hwrng and injects the entropy into /dev/random.
293 config HW_RANDOM_PSERIES
294 tristate "pSeries HW Random Number Generator support"
295 depends on HW_RANDOM && PPC64 && IBMVIO
298 This driver provides kernel-side support for the Random Number
299 Generator hardware found on POWER7+ machines and above
301 To compile this driver as a module, choose M here: the
302 module will be called pseries-rng.
306 config HW_RANDOM_POWERNV
307 tristate "PowerNV Random Number Generator support"
308 depends on HW_RANDOM && PPC_POWERNV
311 This is the driver for Random Number Generator hardware found
312 in POWER7+ and above machines for PowerNV platform.
314 To compile this driver as a module, choose M here: the
315 module will be called powernv-rng.
319 config HW_RANDOM_EXYNOS
320 tristate "EXYNOS HW random number generator support"
321 depends on HW_RANDOM && HAS_IOMEM && HAVE_CLK
323 This driver provides kernel-side support for the Random Number
324 Generator hardware found on EXYNOS SOCs.
326 To compile this driver as a module, choose M here: the
327 module will be called exynos-rng.
332 tristate "TPM HW Random Number Generator support"
333 depends on HW_RANDOM && TCG_TPM
336 This driver provides kernel-side support for the Random Number
337 Generator in the Trusted Platform Module
339 To compile this driver as a module, choose M here: the
340 module will be called tpm-rng.
345 tristate "Qualcomm MSM Random Number Generator support"
346 depends on HW_RANDOM && ARCH_MSM
348 This driver provides kernel-side support for the Random Number
349 Generator hardware found on Qualcomm MSM SoCs.
351 To compile this driver as a module, choose M here. the
352 module will be called msm-rng.