921923583f
This adds a non-cryptographic grade implementation of the model for the True Random Number Generator (TRNG) component in AMD/Xilinx Versal device family. This implements all 3 modes defined by the actual hardware specs, all of which selectable by guest software at will at anytime: 1) PRNG mode, in which the generated sequence is required to be reproducible after reseeded by the same 384-bit value as supplied by guest software. 2) Test mode, in which the generated sequence is required to be reproducible ater reseeded by the same 128-bit test seed supplied by guest software. 3) TRNG mode, in which non-reproducible sequence is generated based on periodic reseed by a suitable entropy source. This model is only intended for non-real world testing of guest software, where cryptographically strong PRNG or TRNG is not needed. This model supports versions 1 & 2 of the device, with default to be version 2; the 'hw-version' uint32 property can be set to 0x0100 to override the default. Other implemented properties: - 'forced-prng', uint64 When set to non-zero, mode 3's entropy source is implemented as a deterministic sequence based on the given value and other deterministic parameters. This option allows the emulation to test guest software using mode 3 and to reproduce data-dependent defects. - 'fips-fault-events', uint32, bit-mask bit 3: Triggers the SP800-90B entropy health test fault irq bit 1: Triggers the FIPS 140-2 continuous test fault irq Signed-off-by: Tong Ho <tong.ho@amd.com> Message-id: 20231031184611.3029156-2-tong.ho@amd.com Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> |
||
---|---|---|
.. | ||
macio | ||
a9scu.c | ||
allwinner-a10-ccm.c | ||
allwinner-a10-dramc.c | ||
allwinner-cpucfg.c | ||
allwinner-h3-ccu.c | ||
allwinner-h3-dramc.c | ||
allwinner-h3-sysctrl.c | ||
allwinner-r40-ccu.c | ||
allwinner-r40-dramc.c | ||
allwinner-sid.c | ||
allwinner-sramc.c | ||
applesmc.c | ||
arm11scu.c | ||
arm_integrator_debug.c | ||
arm_l2x0.c | ||
arm_sysctl.c | ||
armsse-cpu-pwrctrl.c | ||
armsse-cpuid.c | ||
armsse-mhu.c | ||
armv7m_ras.c | ||
aspeed_hace.c | ||
aspeed_i3c.c | ||
aspeed_lpc.c | ||
aspeed_peci.c | ||
aspeed_sbc.c | ||
aspeed_scu.c | ||
aspeed_sdmc.c | ||
aspeed_xdma.c | ||
auxbus.c | ||
avr_power.c | ||
axp2xx.c | ||
bcm2835_cprman.c | ||
bcm2835_mbox.c | ||
bcm2835_mphi.c | ||
bcm2835_powermgt.c | ||
bcm2835_property.c | ||
bcm2835_rng.c | ||
bcm2835_thermal.c | ||
cbus.c | ||
debugexit.c | ||
djmemc.c | ||
eccmemctl.c | ||
edu.c | ||
empty_slot.c | ||
exynos4210_clk.c | ||
exynos4210_pmu.c | ||
exynos4210_rng.c | ||
grlib_ahb_apb_pnp.c | ||
i2c-echo.c | ||
imx6_ccm.c | ||
imx6_src.c | ||
imx6ul_ccm.c | ||
imx7_ccm.c | ||
imx7_gpr.c | ||
imx7_snvs.c | ||
imx7_src.c | ||
imx25_ccm.c | ||
imx31_ccm.c | ||
imx_ccm.c | ||
imx_rngc.c | ||
iosb.c | ||
iotkit-secctl.c | ||
iotkit-sysctl.c | ||
iotkit-sysinfo.c | ||
ivshmem.c | ||
Kconfig | ||
lasi.c | ||
led.c | ||
mac_via.c | ||
mchp_pfsoc_dmc.c | ||
mchp_pfsoc_ioscb.c | ||
mchp_pfsoc_sysreg.c | ||
meson.build | ||
mips_cmgcr.c | ||
mips_cpc.c | ||
mips_itu.c | ||
mos6522.c | ||
mps2-fpgaio.c | ||
mps2-scc.c | ||
msf2-sysreg.c | ||
mst_fpga.c | ||
npcm7xx_clk.c | ||
npcm7xx_gcr.c | ||
npcm7xx_mft.c | ||
npcm7xx_pwm.c | ||
npcm7xx_rng.c | ||
nrf51_rng.c | ||
omap_clk.c | ||
omap_gpmc.c | ||
omap_l4.c | ||
omap_sdrc.c | ||
omap_tap.c | ||
pc-testdev.c | ||
pca9552.c | ||
pci-testdev.c | ||
pvpanic-isa.c | ||
pvpanic-pci.c | ||
pvpanic.c | ||
sbsa_ec.c | ||
sifive_e_aon.c | ||
sifive_e_prci.c | ||
sifive_test.c | ||
sifive_u_otp.c | ||
sifive_u_prci.c | ||
slavio_misc.c | ||
stm32f2xx_syscfg.c | ||
stm32f4xx_exti.c | ||
stm32f4xx_syscfg.c | ||
trace-events | ||
trace.h | ||
tz-mpc.c | ||
tz-msc.c | ||
tz-ppc.c | ||
unimp.c | ||
virt_ctrl.c | ||
vmcoreinfo.c | ||
xlnx-cfi-if.c | ||
xlnx-versal-cframe-reg.c | ||
xlnx-versal-cfu.c | ||
xlnx-versal-crl.c | ||
xlnx-versal-pmc-iou-slcr.c | ||
xlnx-versal-trng.c | ||
xlnx-versal-xramc.c | ||
xlnx-zynqmp-apu-ctrl.c | ||
xlnx-zynqmp-crf.c | ||
zynq_slcr.c |