u-boot/drivers
Andre Przywara 31565bb0aa driver: rng: Add DM_RNG interface for ARMv8.5 RNDR registers
The ARMv8.5 architecture extension defines architectural RNDR/RNDRRS
system registers, that provide 64 bits worth of randomness on every
read. Since it's an extension, and implementing it is optional, there is
a field in the ID_AA64ISAR0_EL1 ID register to query the availability
of those registers.

Add a UCLASS_RNG driver that returns entropy via repeated reads from
those system registers, if the extension is implemented.
The driver always binds, but checks the availability in the probe()
routine.

This helps systems which suffer from low boot entropy, since U-Boot can
provide entropy via the generic UEFI entropy gathering protocol to the OS,
at an early stage.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2023-10-11 13:22:32 -04:00
..
adc common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
ata blk: Use a macro for the typical block size 2023-10-10 16:19:29 -04:00
axi
bios_emulator common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
block dm: blk: Drop blk_{read,write}_devnum() 2023-10-10 16:25:48 -04:00
bootcount common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
bus
button
cache
clk STM32 MCU: 2023-10-04 10:49:30 -04:00
core pci: serial: Support reading PCI-register size with base 2023-10-06 14:38:13 -04:00
cpu cpu: Remove unused NEEDS_MANUAL_RELOC code bits 2023-09-14 10:42:24 -04:00
crypto crypto: rsa: Remove unused NEEDS_MANUAL_RELOC code bits 2023-09-14 10:42:24 -04:00
ddr treewide: unify the linker symbol reference format 2023-08-09 09:21:42 -04:00
demo
dfu common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
dma common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
extcon
fastboot common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
firmware drivers: firmware: ti_sci: Get SCI revision only if TIFS/SYSFW is up 2023-10-04 14:16:01 -04:00
fpga
fuzz
fwu-mdata
gpio gpio: Remove unused NEEDS_MANUAL_RELOC code bits 2023-09-14 10:42:24 -04:00
hwspinlock hwspinlock: Remove unused NEEDS_MANUAL_RELOC code bits 2023-09-14 10:42:24 -04:00
i2c Merge branch 'next' 2023-10-02 10:55:44 -04:00
input input: avoid NULL dereference 2023-10-11 10:35:24 -04:00
iommu
led
mailbox mailbox: k3-sec-proxy: fix error handling for missing scfg in FDT 2023-10-09 15:24:31 -04:00
memory
mfd
misc Merge tag 'u-boot-rockchip-20231007' of https://source.denx.de/u-boot/custodians/u-boot-rockchip 2023-10-08 09:58:55 -04:00
mmc blk: Use a macro for the typical block size 2023-10-10 16:19:29 -04:00
mtd Merge branch 'next' 2023-10-02 10:55:44 -04:00
mux
net drivers: net: fsl-mc: add support for MC reserved memory 2023-10-10 10:13:33 +08:00
nvme blk: Use a macro for the typical block size 2023-10-10 16:19:29 -04:00
pch
pci Merge tag 'u-boot-rockchip-20231007' of https://source.denx.de/u-boot/custodians/u-boot-rockchip 2023-10-08 09:58:55 -04:00
pci_endpoint
phy phy: rockchip: naneng-combphy: Use signal from comb PHY on RK3588 2023-10-07 10:23:12 +08:00
pinctrl pinctrl: renesas: Synchronize R8A779G0 V4H PFC tables with Linux 6.5.3 2023-10-01 00:08:28 +02:00
power power: pmic: rk8xx: Fix power-on source check in SPL 2023-10-07 16:52:48 +08:00
pwm
qe
ram STM32 MCU: 2023-10-04 10:49:30 -04:00
reboot-mode
remoteproc common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
reset common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
rng driver: rng: Add DM_RNG interface for ARMv8.5 RNDR registers 2023-10-11 13:22:32 -04:00
rtc
scsi scsi: Add buffer_aligned check pass-through 2023-08-22 15:17:53 -04:00
serial dm: serial: fix serial_post_probe() 2023-10-09 15:24:31 -04:00
smem
soc common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
sound
spi spi: mtk_spim: prevent global pll clock override 2023-10-11 13:21:33 -04:00
spmi
sysinfo
sysreset common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
tee
thermal thermal: imx_tmu: Increase the polling interval 2023-09-04 17:26:44 +02:00
timer riscv: andesv5: Prefer using the generic RISC-V timer driver in S-mode 2023-10-04 18:23:54 +08:00
tpm common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
ufs ufs: ufs-renesas: Drop include common.h 2023-09-09 10:13:24 -04:00
usb Merge branch 'next' 2023-10-02 10:55:44 -04:00
video common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
virtio bootstd: Rename bootdev_setup_sibling_blk() 2023-08-09 23:31:11 +08:00
w1
w1-eeprom
watchdog common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
xen
Kconfig
Makefile video: Tidy up Makefile rule for video 2023-08-09 23:31:11 +08:00