diff options
| author | Havard Skinnemoen | 2020-10-23 23:06:35 +0200 |
|---|---|---|
| committer | Peter Maydell | 2020-10-27 12:10:10 +0100 |
| commit | 326ccfe240ca9ef4f659a241b39390fa956e999b (patch) | |
| tree | ae846cdf53e92e1d0d629d1f5a5e7a230effda7b /include/hw/arm | |
| parent | hw/timer: Adding watchdog for NPCM7XX Timer. (diff) | |
| download | qemu-326ccfe240ca9ef4f659a241b39390fa956e999b.tar.gz qemu-326ccfe240ca9ef4f659a241b39390fa956e999b.tar.xz qemu-326ccfe240ca9ef4f659a241b39390fa956e999b.zip | |
hw/misc: Add npcm7xx random number generator
The RNG module returns a byte of randomness when the Data Valid bit is
set.
This implementation ignores the prescaler setting, and loads a new value
into RNGD every time RNGCS is read while the RNG is enabled and random
data is available.
A qtest featuring some simple randomness tests is included.
Reviewed-by: Tyrone Ting <kfting@nuvoton.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Havard Skinnemoen <hskinnemoen@google.com>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'include/hw/arm')
| -rw-r--r-- | include/hw/arm/npcm7xx.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/hw/arm/npcm7xx.h b/include/hw/arm/npcm7xx.h index 13106af215..761f9b987e 100644 --- a/include/hw/arm/npcm7xx.h +++ b/include/hw/arm/npcm7xx.h @@ -21,6 +21,7 @@ #include "hw/mem/npcm7xx_mc.h" #include "hw/misc/npcm7xx_clk.h" #include "hw/misc/npcm7xx_gcr.h" +#include "hw/misc/npcm7xx_rng.h" #include "hw/nvram/npcm7xx_otp.h" #include "hw/timer/npcm7xx_timer.h" #include "hw/ssi/npcm7xx_fiu.h" @@ -75,6 +76,7 @@ typedef struct NPCM7xxState { NPCM7xxOTPState key_storage; NPCM7xxOTPState fuse_array; NPCM7xxMCState mc; + NPCM7xxRNGState rng; NPCM7xxFIUState fiu[2]; } NPCM7xxState; |
