Commit | Line | Data |
---|---|---|
844dd05f MB |
1 | # |
2 | # Hardware Random Number Generator (RNG) configuration | |
3 | # | |
4 | ||
02001618 | 5 | menuconfig HW_RANDOM |
fed806f4 JB |
6 | tristate "Hardware Random Number Generator Core support" |
7 | default m | |
844dd05f MB |
8 | ---help--- |
9 | Hardware Random Number Generator Core infrastructure. | |
10 | ||
fed806f4 | 11 | To compile this driver as a module, choose M here: the |
537878d2 DB |
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. | |
15 | ||
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 | |
19 | has more information. | |
fed806f4 | 20 | |
844dd05f | 21 | If unsure, say Y. |
ca644bd5 | 22 | |
02001618 JD |
23 | if HW_RANDOM |
24 | ||
9c3c133b AC |
25 | config HW_RANDOM_TIMERIOMEM |
26 | tristate "Timer IOMEM HW Random Number Generator support" | |
02001618 | 27 | depends on HAS_IOMEM |
9c3c133b AC |
28 | ---help--- |
29 | This driver provides kernel-side support for a generic Random | |
30 | Number Generator used by reading a 'dumb' iomem address that | |
31 | is to be read no faster than, for example, once a second; | |
32 | the default FPGA bitstream on the TS-7800 has such functionality. | |
33 | ||
34 | To compile this driver as a module, choose M here: the | |
35 | module will be called timeriomem-rng. | |
36 | ||
37 | If unsure, say Y. | |
38 | ||
ca644bd5 MB |
39 | config HW_RANDOM_INTEL |
40 | tristate "Intel HW Random Number Generator support" | |
02001618 | 41 | depends on (X86 || IA64) && PCI |
fed806f4 | 42 | default HW_RANDOM |
ca644bd5 MB |
43 | ---help--- |
44 | This driver provides kernel-side support for the Random Number | |
45 | Generator hardware found on Intel i8xx-based motherboards. | |
46 | ||
47 | To compile this driver as a module, choose M here: the | |
48 | module will be called intel-rng. | |
49 | ||
50 | If unsure, say Y. | |
96d63c02 MB |
51 | |
52 | config HW_RANDOM_AMD | |
53 | tristate "AMD HW Random Number Generator support" | |
02001618 | 54 | depends on (X86 || PPC_MAPLE) && PCI |
fed806f4 | 55 | default HW_RANDOM |
96d63c02 MB |
56 | ---help--- |
57 | This driver provides kernel-side support for the Random Number | |
58 | Generator hardware found on AMD 76x-based motherboards. | |
59 | ||
60 | To compile this driver as a module, choose M here: the | |
61 | module will be called amd-rng. | |
62 | ||
63 | If unsure, say Y. | |
ef5d8627 | 64 | |
677d3e2f PK |
65 | config HW_RANDOM_ATMEL |
66 | tristate "Atmel Random Number Generator support" | |
4951db7e | 67 | depends on ARCH_AT91 && HAVE_CLK && OF |
2d9cab51 | 68 | default HW_RANDOM |
677d3e2f PK |
69 | ---help--- |
70 | This driver provides kernel-side support for the Random Number | |
71 | Generator hardware found on Atmel AT91 devices. | |
72 | ||
73 | To compile this driver as a module, choose M here: the | |
74 | module will be called atmel-rng. | |
75 | ||
76 | If unsure, say Y. | |
77 | ||
553072b2 FF |
78 | config HW_RANDOM_BCM63XX |
79 | tristate "Broadcom BCM63xx Random Number Generator support" | |
02001618 | 80 | depends on BCM63XX |
553072b2 FF |
81 | default HW_RANDOM |
82 | ---help--- | |
83 | This driver provides kernel-side support for the Random Number | |
84 | Generator hardware found on the Broadcom BCM63xx SoCs. | |
85 | ||
86 | To compile this driver as a module, choose M here: the | |
87 | module will be called bcm63xx-rng | |
88 | ||
89 | If unusure, say Y. | |
90 | ||
8c4196a2 LR |
91 | config HW_RANDOM_BCM2835 |
92 | tristate "Broadcom BCM2835 Random Number Generator support" | |
02001618 | 93 | depends on ARCH_BCM2835 |
8c4196a2 LR |
94 | default HW_RANDOM |
95 | ---help--- | |
96 | This driver provides kernel-side support for the Random Number | |
97 | Generator hardware found on the Broadcom BCM2835 SoCs. | |
98 | ||
99 | To compile this driver as a module, choose M here: the | |
100 | module will be called bcm2835-rng | |
101 | ||
102 | If unsure, say Y. | |
553072b2 | 103 | |
c83d45d5 SB |
104 | config HW_RANDOM_IPROC_RNG200 |
105 | tristate "Broadcom iProc RNG200 support" | |
106 | depends on ARCH_BCM_IPROC | |
107 | default HW_RANDOM | |
108 | ---help--- | |
109 | This driver provides kernel-side support for the RNG200 | |
110 | hardware found on the Broadcom iProc SoCs. | |
111 | ||
112 | To compile this driver as a module, choose M here: the | |
113 | module will be called iproc-rng200 | |
114 | ||
115 | If unsure, say Y. | |
116 | ||
ef5d8627 MB |
117 | config HW_RANDOM_GEODE |
118 | tristate "AMD Geode HW Random Number Generator support" | |
02001618 | 119 | depends on X86_32 && PCI |
fed806f4 | 120 | default HW_RANDOM |
ef5d8627 MB |
121 | ---help--- |
122 | This driver provides kernel-side support for the Random Number | |
123 | Generator hardware found on the AMD Geode LX. | |
124 | ||
125 | To compile this driver as a module, choose M here: the | |
126 | module will be called geode-rng. | |
127 | ||
128 | If unsure, say Y. | |
13523363 | 129 | |
ce087150 DM |
130 | config HW_RANDOM_N2RNG |
131 | tristate "Niagara2 Random Number Generator support" | |
02001618 | 132 | depends on SPARC64 |
ce087150 DM |
133 | default HW_RANDOM |
134 | ---help--- | |
135 | This driver provides kernel-side support for the Random Number | |
136 | Generator hardware found on Niagara2 cpus. | |
137 | ||
138 | To compile this driver as a module, choose M here: the | |
139 | module will be called n2-rng. | |
140 | ||
141 | If unsure, say Y. | |
142 | ||
13523363 MB |
143 | config HW_RANDOM_VIA |
144 | tristate "VIA HW Random Number Generator support" | |
02001618 | 145 | depends on X86 |
fed806f4 | 146 | default HW_RANDOM |
13523363 MB |
147 | ---help--- |
148 | This driver provides kernel-side support for the Random Number | |
149 | Generator hardware found on VIA based motherboards. | |
150 | ||
151 | To compile this driver as a module, choose M here: the | |
152 | module will be called via-rng. | |
153 | ||
154 | If unsure, say Y. | |
d7174bcb MB |
155 | |
156 | config HW_RANDOM_IXP4XX | |
553da857 | 157 | tristate "Intel IXP4xx NPU HW Pseudo-Random Number Generator support" |
02001618 | 158 | depends on ARCH_IXP4XX |
fed806f4 | 159 | default HW_RANDOM |
d7174bcb | 160 | ---help--- |
553da857 KH |
161 | This driver provides kernel-side support for the Pseudo-Random |
162 | Number Generator hardware found on the Intel IXP45x/46x NPU. | |
d7174bcb MB |
163 | |
164 | To compile this driver as a module, choose M here: the | |
165 | module will be called ixp4xx-rng. | |
166 | ||
167 | If unsure, say Y. | |
ebc915ad MB |
168 | |
169 | config HW_RANDOM_OMAP | |
170 | tristate "OMAP Random Number Generator support" | |
02001618 | 171 | depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS |
fed806f4 | 172 | default HW_RANDOM |
ebc915ad MB |
173 | ---help--- |
174 | This driver provides kernel-side support for the Random Number | |
e83872c9 LV |
175 | Generator hardware found on OMAP16xx, OMAP2/3/4/5 and AM33xx/AM43xx |
176 | multimedia processors. | |
ebc915ad MB |
177 | |
178 | To compile this driver as a module, choose M here: the | |
179 | module will be called omap-rng. | |
180 | ||
181 | If unsure, say Y. | |
b8cb3448 | 182 | |
1c6b7c21 PR |
183 | config HW_RANDOM_OMAP3_ROM |
184 | tristate "OMAP3 ROM Random Number Generator support" | |
02001618 | 185 | depends on ARCH_OMAP3 |
1c6b7c21 PR |
186 | default HW_RANDOM |
187 | ---help--- | |
188 | This driver provides kernel-side support for the Random Number | |
189 | Generator hardware found on OMAP34xx processors. | |
190 | ||
191 | To compile this driver as a module, choose M here: the | |
192 | module will be called omap3-rom-rng. | |
193 | ||
194 | If unsure, say Y. | |
195 | ||
f7557dc8 DD |
196 | config HW_RANDOM_OCTEON |
197 | tristate "Octeon Random Number Generator support" | |
02001618 | 198 | depends on CAVIUM_OCTEON_SOC |
f7557dc8 DD |
199 | default HW_RANDOM |
200 | ---help--- | |
201 | This driver provides kernel-side support for the Random Number | |
202 | Generator hardware found on Octeon processors. | |
203 | ||
204 | To compile this driver as a module, choose M here: the | |
205 | module will be called octeon-rng. | |
206 | ||
207 | If unsure, say Y. | |
208 | ||
b8cb3448 OJ |
209 | config HW_RANDOM_PASEMI |
210 | tristate "PA Semi HW Random Number Generator support" | |
02001618 | 211 | depends on PPC_PASEMI |
b8cb3448 OJ |
212 | default HW_RANDOM |
213 | ---help--- | |
214 | This driver provides kernel-side support for the Random Number | |
0d08a847 | 215 | Generator hardware found on PA Semi PWRficient SoCs. |
b8cb3448 OJ |
216 | |
217 | To compile this driver as a module, choose M here: the | |
218 | module will be called pasemi-rng. | |
219 | ||
220 | If unsure, say Y. | |
221 | ||
f7f510ec RR |
222 | config HW_RANDOM_VIRTIO |
223 | tristate "VirtIO Random Number Generator support" | |
02001618 | 224 | depends on VIRTIO |
f7f510ec RR |
225 | ---help--- |
226 | This driver provides kernel-side support for the virtual Random Number | |
227 | Generator hardware. | |
228 | ||
229 | To compile this driver as a module, choose M here: the | |
230 | module will be called virtio-rng. If unsure, say N. | |
45001e92 | 231 | |
049a947c AN |
232 | config HW_RANDOM_TX4939 |
233 | tristate "TX4939 Random Number Generator support" | |
02001618 | 234 | depends on SOC_TX4939 |
049a947c AN |
235 | default HW_RANDOM |
236 | ---help--- | |
237 | This driver provides kernel-side support for the Random Number | |
238 | Generator hardware found on TX4939 SoC. | |
239 | ||
240 | To compile this driver as a module, choose M here: the | |
241 | module will be called tx4939-rng. | |
242 | ||
243 | If unsure, say Y. | |
244 | ||
45001e92 ACA |
245 | config HW_RANDOM_MXC_RNGA |
246 | tristate "Freescale i.MX RNGA Random Number Generator" | |
02001618 | 247 | depends on ARCH_HAS_RNGA |
2d9cab51 | 248 | default HW_RANDOM |
45001e92 ACA |
249 | ---help--- |
250 | This driver provides kernel-side support for the Random Number | |
251 | Generator hardware found on Freescale i.MX processors. | |
252 | ||
253 | To compile this driver as a module, choose M here: the | |
254 | module will be called mxc-rnga. | |
255 | ||
256 | If unsure, say Y. | |
bc85b25e AR |
257 | |
258 | config HW_RANDOM_NOMADIK | |
259 | tristate "ST-Ericsson Nomadik Random Number Generator support" | |
02001618 | 260 | depends on ARCH_NOMADIK |
2d9cab51 | 261 | default HW_RANDOM |
bc85b25e AR |
262 | ---help--- |
263 | This driver provides kernel-side support for the Random Number | |
264 | Generator hardware found on ST-Ericsson SoCs (8815 and 8500). | |
265 | ||
266 | To compile this driver as a module, choose M here: the | |
267 | module will be called nomadik-rng. | |
268 | ||
269 | If unsure, say Y. | |
5efb94ee | 270 | |
52527cf3 JB |
271 | config HW_RANDOM_PPC4XX |
272 | tristate "PowerPC 4xx generic true random number generator support" | |
02001618 | 273 | depends on PPC && 4xx |
2d9cab51 | 274 | default HW_RANDOM |
52527cf3 JB |
275 | ---help--- |
276 | This driver provides the kernel-side support for the TRNG hardware | |
277 | found in the security function of some PowerPC 4xx SoCs. | |
278 | ||
279 | To compile this driver as a module, choose M here: the | |
280 | module will be called ppc4xx-rng. | |
281 | ||
282 | If unsure, say N. | |
d805a786 | 283 | |
649e9ea0 KY |
284 | config HW_RANDOM_PSERIES |
285 | tristate "pSeries HW Random Number Generator support" | |
02001618 | 286 | depends on PPC64 && IBMVIO |
649e9ea0 KY |
287 | default HW_RANDOM |
288 | ---help--- | |
289 | This driver provides kernel-side support for the Random Number | |
290 | Generator hardware found on POWER7+ machines and above | |
291 | ||
292 | To compile this driver as a module, choose M here: the | |
293 | module will be called pseries-rng. | |
294 | ||
295 | If unsure, say Y. | |
b329669e | 296 | |
66548e40 ME |
297 | config HW_RANDOM_POWERNV |
298 | tristate "PowerNV Random Number Generator support" | |
02001618 | 299 | depends on PPC_POWERNV |
66548e40 ME |
300 | default HW_RANDOM |
301 | ---help--- | |
302 | This is the driver for Random Number Generator hardware found | |
303 | in POWER7+ and above machines for PowerNV platform. | |
304 | ||
305 | To compile this driver as a module, choose M here: the | |
306 | module will be called powernv-rng. | |
307 | ||
308 | If unsure, say Y. | |
309 | ||
b329669e JL |
310 | config HW_RANDOM_EXYNOS |
311 | tristate "EXYNOS HW random number generator support" | |
2d9cab51 JD |
312 | depends on ARCH_EXYNOS |
313 | default HW_RANDOM | |
b329669e JL |
314 | ---help--- |
315 | This driver provides kernel-side support for the Random Number | |
316 | Generator hardware found on EXYNOS SOCs. | |
317 | ||
318 | To compile this driver as a module, choose M here: the | |
319 | module will be called exynos-rng. | |
320 | ||
321 | If unsure, say Y. | |
578b016f KY |
322 | |
323 | config HW_RANDOM_TPM | |
324 | tristate "TPM HW Random Number Generator support" | |
02001618 | 325 | depends on TCG_TPM |
578b016f KY |
326 | default HW_RANDOM |
327 | ---help--- | |
328 | This driver provides kernel-side support for the Random Number | |
329 | Generator in the Trusted Platform Module | |
330 | ||
331 | To compile this driver as a module, choose M here: the | |
332 | module will be called tpm-rng. | |
333 | ||
334 | If unsure, say Y. | |
0d289788 SV |
335 | |
336 | config HW_RANDOM_MSM | |
2257ffbc KG |
337 | tristate "Qualcomm SoCs Random Number Generator support" |
338 | depends on HW_RANDOM && ARCH_QCOM | |
2d9cab51 | 339 | default HW_RANDOM |
0d289788 SV |
340 | ---help--- |
341 | This driver provides kernel-side support for the Random Number | |
2257ffbc | 342 | Generator hardware found on Qualcomm SoCs. |
0d289788 SV |
343 | |
344 | To compile this driver as a module, choose M here. the | |
345 | module will be called msm-rng. | |
346 | ||
347 | If unsure, say Y. | |
dc64ef00 | 348 | |
a91ae4eb FK |
349 | config HW_RANDOM_XGENE |
350 | tristate "APM X-Gene True Random Number Generator (TRNG) support" | |
351 | depends on HW_RANDOM && ARCH_XGENE | |
352 | default HW_RANDOM | |
353 | ---help--- | |
354 | This driver provides kernel-side support for the Random Number | |
355 | Generator hardware found on APM X-Gene SoC. | |
356 | ||
357 | To compile this driver as a module, choose M here: the | |
358 | module will be called xgene_rng. | |
359 | ||
360 | If unsure, say Y. | |
361 | ||
02001618 JD |
362 | endif # HW_RANDOM |
363 | ||
dc64ef00 JD |
364 | config UML_RANDOM |
365 | depends on UML | |
366 | tristate "Hardware random number generator" | |
367 | help | |
368 | This option enables UML's "hardware" random number generator. It | |
369 | attaches itself to the host's /dev/random, supplying as much entropy | |
370 | as the host has, rather than the small amount the UML gets from its | |
371 | own drivers. It registers itself as a standard hardware random number | |
372 | generator, major 10, minor 183, and the canonical device name is | |
373 | /dev/hwrng. | |
374 | The way to make use of this is to install the rng-tools package | |
375 | (check your distro, or download from | |
376 | http://sourceforge.net/projects/gkernel/). rngd periodically reads | |
377 | /dev/hwrng and injects the entropy into /dev/random. |