mirror of
https://github.com/torvalds/linux.git
synced 2025-11-04 10:40:15 +02:00
The "Arm True Random Number Generator Firmware Interface"[1] provides an SMCCC based interface to a true hardware random number generator. So far we are using that in arch_get_random_seed(), but it might be useful to expose the entropy through the /dev/hwrng device as well. This allows to assess the quality of the implementation, by using "rngtest" from the rng-tools package, for example. Add a simple platform driver implementing the hw_random interface. The corresponding platform device is created by the SMCCC core code, we just match it here by name and provide a module alias. Since the firmware takes care about serialisation, this can happily coexist with the arch_get_random_seed() bits. [1] https://developer.arm.com/documentation/den0098/latest/ Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Ard Biesheuvel <ardb@kernel.org> Reviewed-by: Mark Brown <broonie@kernel.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> |
||
|---|---|---|
| .. | ||
| amd-rng.c | ||
| arm_smccc_trng.c | ||
| atmel-rng.c | ||
| ba431-rng.c | ||
| bcm2835-rng.c | ||
| cavium-rng-vf.c | ||
| cavium-rng.c | ||
| cctrng.c | ||
| cctrng.h | ||
| core.c | ||
| exynos-trng.c | ||
| geode-rng.c | ||
| hisi-rng.c | ||
| imx-rngc.c | ||
| ingenic-rng.c | ||
| ingenic-trng.c | ||
| intel-rng.c | ||
| iproc-rng200.c | ||
| ixp4xx-rng.c | ||
| Kconfig | ||
| ks-sa-rng.c | ||
| Makefile | ||
| meson-rng.c | ||
| mtk-rng.c | ||
| mxc-rnga.c | ||
| n2-asm.S | ||
| n2-drv.c | ||
| n2rng.h | ||
| nomadik-rng.c | ||
| npcm-rng.c | ||
| octeon-rng.c | ||
| omap-rng.c | ||
| omap3-rom-rng.c | ||
| optee-rng.c | ||
| pasemi-rng.c | ||
| pic32-rng.c | ||
| powernv-rng.c | ||
| pseries-rng.c | ||
| s390-trng.c | ||
| st-rng.c | ||
| stm32-rng.c | ||
| timeriomem-rng.c | ||
| tx4939-rng.c | ||
| via-rng.c | ||
| virtio-rng.c | ||
| xgene-rng.c | ||
| xiphera-trng.c | ||