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" | |
2d9cab51 JD |
67 | depends on ARCH_AT91 && HAVE_CLK |
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 | |
ef5d8627 MB |
104 | config HW_RANDOM_GEODE |
105 | tristate "AMD Geode HW Random Number Generator support" | |
02001618 | 106 | depends on X86_32 && PCI |
fed806f4 | 107 | default HW_RANDOM |
ef5d8627 MB |
108 | ---help--- |
109 | This driver provides kernel-side support for the Random Number | |
110 | Generator hardware found on the AMD Geode LX. | |
111 | ||
112 | To compile this driver as a module, choose M here: the | |
113 | module will be called geode-rng. | |
114 | ||
115 | If unsure, say Y. | |
13523363 | 116 | |
ce087150 DM |
117 | config HW_RANDOM_N2RNG |
118 | tristate "Niagara2 Random Number Generator support" | |
02001618 | 119 | depends on SPARC64 |
ce087150 DM |
120 | default HW_RANDOM |
121 | ---help--- | |
122 | This driver provides kernel-side support for the Random Number | |
123 | Generator hardware found on Niagara2 cpus. | |
124 | ||
125 | To compile this driver as a module, choose M here: the | |
126 | module will be called n2-rng. | |
127 | ||
128 | If unsure, say Y. | |
129 | ||
13523363 MB |
130 | config HW_RANDOM_VIA |
131 | tristate "VIA HW Random Number Generator support" | |
02001618 | 132 | depends on X86 |
fed806f4 | 133 | default HW_RANDOM |
13523363 MB |
134 | ---help--- |
135 | This driver provides kernel-side support for the Random Number | |
136 | Generator hardware found on VIA based motherboards. | |
137 | ||
138 | To compile this driver as a module, choose M here: the | |
139 | module will be called via-rng. | |
140 | ||
141 | If unsure, say Y. | |
d7174bcb MB |
142 | |
143 | config HW_RANDOM_IXP4XX | |
553da857 | 144 | tristate "Intel IXP4xx NPU HW Pseudo-Random Number Generator support" |
02001618 | 145 | depends on ARCH_IXP4XX |
fed806f4 | 146 | default HW_RANDOM |
d7174bcb | 147 | ---help--- |
553da857 KH |
148 | This driver provides kernel-side support for the Pseudo-Random |
149 | Number Generator hardware found on the Intel IXP45x/46x NPU. | |
d7174bcb MB |
150 | |
151 | To compile this driver as a module, choose M here: the | |
152 | module will be called ixp4xx-rng. | |
153 | ||
154 | If unsure, say Y. | |
ebc915ad MB |
155 | |
156 | config HW_RANDOM_OMAP | |
157 | tristate "OMAP Random Number Generator support" | |
02001618 | 158 | depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS |
fed806f4 | 159 | default HW_RANDOM |
ebc915ad MB |
160 | ---help--- |
161 | This driver provides kernel-side support for the Random Number | |
e83872c9 LV |
162 | Generator hardware found on OMAP16xx, OMAP2/3/4/5 and AM33xx/AM43xx |
163 | multimedia processors. | |
ebc915ad MB |
164 | |
165 | To compile this driver as a module, choose M here: the | |
166 | module will be called omap-rng. | |
167 | ||
168 | If unsure, say Y. | |
b8cb3448 | 169 | |
1c6b7c21 PR |
170 | config HW_RANDOM_OMAP3_ROM |
171 | tristate "OMAP3 ROM Random Number Generator support" | |
02001618 | 172 | depends on ARCH_OMAP3 |
1c6b7c21 PR |
173 | default HW_RANDOM |
174 | ---help--- | |
175 | This driver provides kernel-side support for the Random Number | |
176 | Generator hardware found on OMAP34xx processors. | |
177 | ||
178 | To compile this driver as a module, choose M here: the | |
179 | module will be called omap3-rom-rng. | |
180 | ||
181 | If unsure, say Y. | |
182 | ||
f7557dc8 DD |
183 | config HW_RANDOM_OCTEON |
184 | tristate "Octeon Random Number Generator support" | |
02001618 | 185 | depends on CAVIUM_OCTEON_SOC |
f7557dc8 DD |
186 | default HW_RANDOM |
187 | ---help--- | |
188 | This driver provides kernel-side support for the Random Number | |
189 | Generator hardware found on Octeon processors. | |
190 | ||
191 | To compile this driver as a module, choose M here: the | |
192 | module will be called octeon-rng. | |
193 | ||
194 | If unsure, say Y. | |
195 | ||
b8cb3448 OJ |
196 | config HW_RANDOM_PASEMI |
197 | tristate "PA Semi HW Random Number Generator support" | |
02001618 | 198 | depends on PPC_PASEMI |
b8cb3448 OJ |
199 | default HW_RANDOM |
200 | ---help--- | |
201 | This driver provides kernel-side support for the Random Number | |
0d08a847 | 202 | Generator hardware found on PA Semi PWRficient SoCs. |
b8cb3448 OJ |
203 | |
204 | To compile this driver as a module, choose M here: the | |
205 | module will be called pasemi-rng. | |
206 | ||
207 | If unsure, say Y. | |
208 | ||
f7f510ec RR |
209 | config HW_RANDOM_VIRTIO |
210 | tristate "VirtIO Random Number Generator support" | |
02001618 | 211 | depends on VIRTIO |
f7f510ec RR |
212 | ---help--- |
213 | This driver provides kernel-side support for the virtual Random Number | |
214 | Generator hardware. | |
215 | ||
216 | To compile this driver as a module, choose M here: the | |
217 | module will be called virtio-rng. If unsure, say N. | |
45001e92 | 218 | |
049a947c AN |
219 | config HW_RANDOM_TX4939 |
220 | tristate "TX4939 Random Number Generator support" | |
02001618 | 221 | depends on SOC_TX4939 |
049a947c AN |
222 | default HW_RANDOM |
223 | ---help--- | |
224 | This driver provides kernel-side support for the Random Number | |
225 | Generator hardware found on TX4939 SoC. | |
226 | ||
227 | To compile this driver as a module, choose M here: the | |
228 | module will be called tx4939-rng. | |
229 | ||
230 | If unsure, say Y. | |
231 | ||
45001e92 ACA |
232 | config HW_RANDOM_MXC_RNGA |
233 | tristate "Freescale i.MX RNGA Random Number Generator" | |
02001618 | 234 | depends on ARCH_HAS_RNGA |
2d9cab51 | 235 | default HW_RANDOM |
45001e92 ACA |
236 | ---help--- |
237 | This driver provides kernel-side support for the Random Number | |
238 | Generator hardware found on Freescale i.MX processors. | |
239 | ||
240 | To compile this driver as a module, choose M here: the | |
241 | module will be called mxc-rnga. | |
242 | ||
243 | If unsure, say Y. | |
bc85b25e AR |
244 | |
245 | config HW_RANDOM_NOMADIK | |
246 | tristate "ST-Ericsson Nomadik Random Number Generator support" | |
02001618 | 247 | depends on ARCH_NOMADIK |
2d9cab51 | 248 | default HW_RANDOM |
bc85b25e AR |
249 | ---help--- |
250 | This driver provides kernel-side support for the Random Number | |
251 | Generator hardware found on ST-Ericsson SoCs (8815 and 8500). | |
252 | ||
253 | To compile this driver as a module, choose M here: the | |
254 | module will be called nomadik-rng. | |
255 | ||
256 | If unsure, say Y. | |
5efb94ee | 257 | |
52527cf3 JB |
258 | config HW_RANDOM_PPC4XX |
259 | tristate "PowerPC 4xx generic true random number generator support" | |
02001618 | 260 | depends on PPC && 4xx |
2d9cab51 | 261 | default HW_RANDOM |
52527cf3 JB |
262 | ---help--- |
263 | This driver provides the kernel-side support for the TRNG hardware | |
264 | found in the security function of some PowerPC 4xx SoCs. | |
265 | ||
266 | To compile this driver as a module, choose M here: the | |
267 | module will be called ppc4xx-rng. | |
268 | ||
269 | If unsure, say N. | |
d805a786 | 270 | |
649e9ea0 KY |
271 | config HW_RANDOM_PSERIES |
272 | tristate "pSeries HW Random Number Generator support" | |
02001618 | 273 | depends on PPC64 && IBMVIO |
649e9ea0 KY |
274 | default HW_RANDOM |
275 | ---help--- | |
276 | This driver provides kernel-side support for the Random Number | |
277 | Generator hardware found on POWER7+ machines and above | |
278 | ||
279 | To compile this driver as a module, choose M here: the | |
280 | module will be called pseries-rng. | |
281 | ||
282 | If unsure, say Y. | |
b329669e | 283 | |
66548e40 ME |
284 | config HW_RANDOM_POWERNV |
285 | tristate "PowerNV Random Number Generator support" | |
02001618 | 286 | depends on PPC_POWERNV |
66548e40 ME |
287 | default HW_RANDOM |
288 | ---help--- | |
289 | This is the driver for Random Number Generator hardware found | |
290 | in POWER7+ and above machines for PowerNV platform. | |
291 | ||
292 | To compile this driver as a module, choose M here: the | |
293 | module will be called powernv-rng. | |
294 | ||
295 | If unsure, say Y. | |
296 | ||
b329669e JL |
297 | config HW_RANDOM_EXYNOS |
298 | tristate "EXYNOS HW random number generator support" | |
2d9cab51 JD |
299 | depends on ARCH_EXYNOS |
300 | default HW_RANDOM | |
b329669e JL |
301 | ---help--- |
302 | This driver provides kernel-side support for the Random Number | |
303 | Generator hardware found on EXYNOS SOCs. | |
304 | ||
305 | To compile this driver as a module, choose M here: the | |
306 | module will be called exynos-rng. | |
307 | ||
308 | If unsure, say Y. | |
578b016f KY |
309 | |
310 | config HW_RANDOM_TPM | |
311 | tristate "TPM HW Random Number Generator support" | |
02001618 | 312 | depends on TCG_TPM |
578b016f KY |
313 | default HW_RANDOM |
314 | ---help--- | |
315 | This driver provides kernel-side support for the Random Number | |
316 | Generator in the Trusted Platform Module | |
317 | ||
318 | To compile this driver as a module, choose M here: the | |
319 | module will be called tpm-rng. | |
320 | ||
321 | If unsure, say Y. | |
0d289788 SV |
322 | |
323 | config HW_RANDOM_MSM | |
2257ffbc KG |
324 | tristate "Qualcomm SoCs Random Number Generator support" |
325 | depends on HW_RANDOM && ARCH_QCOM | |
2d9cab51 | 326 | default HW_RANDOM |
0d289788 SV |
327 | ---help--- |
328 | This driver provides kernel-side support for the Random Number | |
2257ffbc | 329 | Generator hardware found on Qualcomm SoCs. |
0d289788 SV |
330 | |
331 | To compile this driver as a module, choose M here. the | |
332 | module will be called msm-rng. | |
333 | ||
334 | If unsure, say Y. | |
dc64ef00 | 335 | |
a91ae4eb FK |
336 | config HW_RANDOM_XGENE |
337 | tristate "APM X-Gene True Random Number Generator (TRNG) support" | |
338 | depends on HW_RANDOM && ARCH_XGENE | |
339 | default HW_RANDOM | |
340 | ---help--- | |
341 | This driver provides kernel-side support for the Random Number | |
342 | Generator hardware found on APM X-Gene SoC. | |
343 | ||
344 | To compile this driver as a module, choose M here: the | |
345 | module will be called xgene_rng. | |
346 | ||
347 | If unsure, say Y. | |
348 | ||
02001618 JD |
349 | endif # HW_RANDOM |
350 | ||
dc64ef00 JD |
351 | config UML_RANDOM |
352 | depends on UML | |
353 | tristate "Hardware random number generator" | |
354 | help | |
355 | This option enables UML's "hardware" random number generator. It | |
356 | attaches itself to the host's /dev/random, supplying as much entropy | |
357 | as the host has, rather than the small amount the UML gets from its | |
358 | own drivers. It registers itself as a standard hardware random number | |
359 | generator, major 10, minor 183, and the canonical device name is | |
360 | /dev/hwrng. | |
361 | The way to make use of this is to install the rng-tools package | |
362 | (check your distro, or download from | |
363 | http://sourceforge.net/projects/gkernel/). rngd periodically reads | |
364 | /dev/hwrng and injects the entropy into /dev/random. |