| 1 | # |
| 2 | # Hardware Random Number Generator (RNG) configuration |
| 3 | # |
| 4 | |
| 5 | config HW_RANDOM |
| 6 | tristate "Hardware Random Number Generator Core support" |
| 7 | default m |
| 8 | ---help--- |
| 9 | Hardware Random Number Generator Core infrastructure. |
| 10 | |
| 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. |
| 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. |
| 20 | |
| 21 | If unsure, say Y. |
| 22 | |
| 23 | config HW_RANDOM_TIMERIOMEM |
| 24 | tristate "Timer IOMEM HW Random Number Generator support" |
| 25 | depends on HW_RANDOM && HAS_IOMEM |
| 26 | ---help--- |
| 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. |
| 31 | |
| 32 | To compile this driver as a module, choose M here: the |
| 33 | module will be called timeriomem-rng. |
| 34 | |
| 35 | If unsure, say Y. |
| 36 | |
| 37 | config HW_RANDOM_INTEL |
| 38 | tristate "Intel HW Random Number Generator support" |
| 39 | depends on HW_RANDOM && (X86 || IA64) && PCI |
| 40 | default HW_RANDOM |
| 41 | ---help--- |
| 42 | This driver provides kernel-side support for the Random Number |
| 43 | Generator hardware found on Intel i8xx-based motherboards. |
| 44 | |
| 45 | To compile this driver as a module, choose M here: the |
| 46 | module will be called intel-rng. |
| 47 | |
| 48 | If unsure, say Y. |
| 49 | |
| 50 | config HW_RANDOM_AMD |
| 51 | tristate "AMD HW Random Number Generator support" |
| 52 | depends on HW_RANDOM && (X86 || PPC_MAPLE) && PCI |
| 53 | default HW_RANDOM |
| 54 | ---help--- |
| 55 | This driver provides kernel-side support for the Random Number |
| 56 | Generator hardware found on AMD 76x-based motherboards. |
| 57 | |
| 58 | To compile this driver as a module, choose M here: the |
| 59 | module will be called amd-rng. |
| 60 | |
| 61 | If unsure, say Y. |
| 62 | |
| 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) |
| 67 | ---help--- |
| 68 | This driver provides kernel-side support for the Random Number |
| 69 | Generator hardware found on Atmel AT91 devices. |
| 70 | |
| 71 | To compile this driver as a module, choose M here: the |
| 72 | module will be called atmel-rng. |
| 73 | |
| 74 | If unsure, say Y. |
| 75 | |
| 76 | config HW_RANDOM_BCM63XX |
| 77 | tristate "Broadcom BCM63xx Random Number Generator support" |
| 78 | depends on HW_RANDOM && BCM63XX |
| 79 | default HW_RANDOM |
| 80 | ---help--- |
| 81 | This driver provides kernel-side support for the Random Number |
| 82 | Generator hardware found on the Broadcom BCM63xx SoCs. |
| 83 | |
| 84 | To compile this driver as a module, choose M here: the |
| 85 | module will be called bcm63xx-rng |
| 86 | |
| 87 | If unusure, say Y. |
| 88 | |
| 89 | config HW_RANDOM_BCM2835 |
| 90 | tristate "Broadcom BCM2835 Random Number Generator support" |
| 91 | depends on HW_RANDOM && ARCH_BCM2835 |
| 92 | default HW_RANDOM |
| 93 | ---help--- |
| 94 | This driver provides kernel-side support for the Random Number |
| 95 | Generator hardware found on the Broadcom BCM2835 SoCs. |
| 96 | |
| 97 | To compile this driver as a module, choose M here: the |
| 98 | module will be called bcm2835-rng |
| 99 | |
| 100 | If unsure, say Y. |
| 101 | |
| 102 | config HW_RANDOM_GEODE |
| 103 | tristate "AMD Geode HW Random Number Generator support" |
| 104 | depends on HW_RANDOM && X86_32 && PCI |
| 105 | default HW_RANDOM |
| 106 | ---help--- |
| 107 | This driver provides kernel-side support for the Random Number |
| 108 | Generator hardware found on the AMD Geode LX. |
| 109 | |
| 110 | To compile this driver as a module, choose M here: the |
| 111 | module will be called geode-rng. |
| 112 | |
| 113 | If unsure, say Y. |
| 114 | |
| 115 | config HW_RANDOM_N2RNG |
| 116 | tristate "Niagara2 Random Number Generator support" |
| 117 | depends on HW_RANDOM && SPARC64 |
| 118 | default HW_RANDOM |
| 119 | ---help--- |
| 120 | This driver provides kernel-side support for the Random Number |
| 121 | Generator hardware found on Niagara2 cpus. |
| 122 | |
| 123 | To compile this driver as a module, choose M here: the |
| 124 | module will be called n2-rng. |
| 125 | |
| 126 | If unsure, say Y. |
| 127 | |
| 128 | config HW_RANDOM_VIA |
| 129 | tristate "VIA HW Random Number Generator support" |
| 130 | depends on HW_RANDOM && X86 |
| 131 | default HW_RANDOM |
| 132 | ---help--- |
| 133 | This driver provides kernel-side support for the Random Number |
| 134 | Generator hardware found on VIA based motherboards. |
| 135 | |
| 136 | To compile this driver as a module, choose M here: the |
| 137 | module will be called via-rng. |
| 138 | |
| 139 | If unsure, say Y. |
| 140 | |
| 141 | config HW_RANDOM_IXP4XX |
| 142 | tristate "Intel IXP4xx NPU HW Pseudo-Random Number Generator support" |
| 143 | depends on HW_RANDOM && ARCH_IXP4XX |
| 144 | default HW_RANDOM |
| 145 | ---help--- |
| 146 | This driver provides kernel-side support for the Pseudo-Random |
| 147 | Number Generator hardware found on the Intel IXP45x/46x NPU. |
| 148 | |
| 149 | To compile this driver as a module, choose M here: the |
| 150 | module will be called ixp4xx-rng. |
| 151 | |
| 152 | If unsure, say Y. |
| 153 | |
| 154 | config HW_RANDOM_OMAP |
| 155 | tristate "OMAP Random Number Generator support" |
| 156 | depends on HW_RANDOM && (ARCH_OMAP16XX || ARCH_OMAP2) |
| 157 | default HW_RANDOM |
| 158 | ---help--- |
| 159 | This driver provides kernel-side support for the Random Number |
| 160 | Generator hardware found on OMAP16xx and OMAP24xx multimedia |
| 161 | processors. |
| 162 | |
| 163 | To compile this driver as a module, choose M here: the |
| 164 | module will be called omap-rng. |
| 165 | |
| 166 | If unsure, say Y. |
| 167 | |
| 168 | config HW_RANDOM_OCTEON |
| 169 | tristate "Octeon Random Number Generator support" |
| 170 | depends on HW_RANDOM && CPU_CAVIUM_OCTEON |
| 171 | default HW_RANDOM |
| 172 | ---help--- |
| 173 | This driver provides kernel-side support for the Random Number |
| 174 | Generator hardware found on Octeon processors. |
| 175 | |
| 176 | To compile this driver as a module, choose M here: the |
| 177 | module will be called octeon-rng. |
| 178 | |
| 179 | If unsure, say Y. |
| 180 | |
| 181 | config HW_RANDOM_PASEMI |
| 182 | tristate "PA Semi HW Random Number Generator support" |
| 183 | depends on HW_RANDOM && PPC_PASEMI |
| 184 | default HW_RANDOM |
| 185 | ---help--- |
| 186 | This driver provides kernel-side support for the Random Number |
| 187 | Generator hardware found on PA Semi PWRficient SoCs. |
| 188 | |
| 189 | To compile this driver as a module, choose M here: the |
| 190 | module will be called pasemi-rng. |
| 191 | |
| 192 | If unsure, say Y. |
| 193 | |
| 194 | config HW_RANDOM_VIRTIO |
| 195 | tristate "VirtIO Random Number Generator support" |
| 196 | depends on HW_RANDOM && VIRTIO |
| 197 | ---help--- |
| 198 | This driver provides kernel-side support for the virtual Random Number |
| 199 | Generator hardware. |
| 200 | |
| 201 | To compile this driver as a module, choose M here: the |
| 202 | module will be called virtio-rng. If unsure, say N. |
| 203 | |
| 204 | config HW_RANDOM_TX4939 |
| 205 | tristate "TX4939 Random Number Generator support" |
| 206 | depends on HW_RANDOM && SOC_TX4939 |
| 207 | default HW_RANDOM |
| 208 | ---help--- |
| 209 | This driver provides kernel-side support for the Random Number |
| 210 | Generator hardware found on TX4939 SoC. |
| 211 | |
| 212 | To compile this driver as a module, choose M here: the |
| 213 | module will be called tx4939-rng. |
| 214 | |
| 215 | If unsure, say Y. |
| 216 | |
| 217 | config HW_RANDOM_MXC_RNGA |
| 218 | tristate "Freescale i.MX RNGA Random Number Generator" |
| 219 | depends on HW_RANDOM && ARCH_HAS_RNGA |
| 220 | ---help--- |
| 221 | This driver provides kernel-side support for the Random Number |
| 222 | Generator hardware found on Freescale i.MX processors. |
| 223 | |
| 224 | To compile this driver as a module, choose M here: the |
| 225 | module will be called mxc-rnga. |
| 226 | |
| 227 | If unsure, say Y. |
| 228 | |
| 229 | config HW_RANDOM_NOMADIK |
| 230 | tristate "ST-Ericsson Nomadik Random Number Generator support" |
| 231 | depends on HW_RANDOM && ARCH_NOMADIK |
| 232 | ---help--- |
| 233 | This driver provides kernel-side support for the Random Number |
| 234 | Generator hardware found on ST-Ericsson SoCs (8815 and 8500). |
| 235 | |
| 236 | To compile this driver as a module, choose M here: the |
| 237 | module will be called nomadik-rng. |
| 238 | |
| 239 | If unsure, say Y. |
| 240 | |
| 241 | config HW_RANDOM_PICOXCELL |
| 242 | tristate "Picochip picoXcell true random number generator support" |
| 243 | depends on HW_RANDOM && ARCH_PICOXCELL && PICOXCELL_PC3X3 |
| 244 | ---help--- |
| 245 | This driver provides kernel-side support for the Random Number |
| 246 | Generator hardware found on Picochip PC3x3 and later devices. |
| 247 | |
| 248 | To compile this driver as a module, choose M here: the |
| 249 | module will be called picoxcell-rng. |
| 250 | |
| 251 | If unsure, say Y. |
| 252 | |
| 253 | config HW_RANDOM_PPC4XX |
| 254 | tristate "PowerPC 4xx generic true random number generator support" |
| 255 | depends on HW_RANDOM && PPC && 4xx |
| 256 | ---help--- |
| 257 | This driver provides the kernel-side support for the TRNG hardware |
| 258 | found in the security function of some PowerPC 4xx SoCs. |
| 259 | |
| 260 | To compile this driver as a module, choose M here: the |
| 261 | module will be called ppc4xx-rng. |
| 262 | |
| 263 | If unsure, say N. |
| 264 | |
| 265 | config UML_RANDOM |
| 266 | depends on UML |
| 267 | tristate "Hardware random number generator" |
| 268 | help |
| 269 | This option enables UML's "hardware" random number generator. It |
| 270 | attaches itself to the host's /dev/random, supplying as much entropy |
| 271 | as the host has, rather than the small amount the UML gets from its |
| 272 | own drivers. It registers itself as a standard hardware random number |
| 273 | generator, major 10, minor 183, and the canonical device name is |
| 274 | /dev/hwrng. |
| 275 | The way to make use of this is to install the rng-tools package |
| 276 | (check your distro, or download from |
| 277 | http://sourceforge.net/projects/gkernel/). rngd periodically reads |
| 278 | /dev/hwrng and injects the entropy into /dev/random. |
| 279 | |
| 280 | config HW_RANDOM_PSERIES |
| 281 | tristate "pSeries HW Random Number Generator support" |
| 282 | depends on HW_RANDOM && PPC64 && IBMVIO |
| 283 | default HW_RANDOM |
| 284 | ---help--- |
| 285 | This driver provides kernel-side support for the Random Number |
| 286 | Generator hardware found on POWER7+ machines and above |
| 287 | |
| 288 | To compile this driver as a module, choose M here: the |
| 289 | module will be called pseries-rng. |
| 290 | |
| 291 | If unsure, say Y. |
| 292 | |
| 293 | config HW_RANDOM_EXYNOS |
| 294 | tristate "EXYNOS HW random number generator support" |
| 295 | depends on HW_RANDOM && HAS_IOMEM && HAVE_CLK |
| 296 | ---help--- |
| 297 | This driver provides kernel-side support for the Random Number |
| 298 | Generator hardware found on EXYNOS SOCs. |
| 299 | |
| 300 | To compile this driver as a module, choose M here: the |
| 301 | module will be called exynos-rng. |
| 302 | |
| 303 | If unsure, say Y. |
| 304 | |
| 305 | config HW_RANDOM_TPM |
| 306 | tristate "TPM HW Random Number Generator support" |
| 307 | depends on HW_RANDOM && TCG_TPM |
| 308 | default HW_RANDOM |
| 309 | ---help--- |
| 310 | This driver provides kernel-side support for the Random Number |
| 311 | Generator in the Trusted Platform Module |
| 312 | |
| 313 | To compile this driver as a module, choose M here: the |
| 314 | module will be called tpm-rng. |
| 315 | |
| 316 | If unsure, say Y. |