freebsd-src/sys/arm64/conf
Andrew Turner 9eecef0521 Add an Armv8 rndr random number provider
Armv8.5 adds an optional random number generator. This is implemented
as two special registers one to read a random number, the other to
re-seed the entropy pool before reading a random number. Both registers
will set the condition flags to tell the caller they can't produce a
random number in a reasonable amount of time.

Without a signal to reseed the entropy pool use the latter register
to provide random numbers to the kernel pool. If at a later time we
had a way to tell the provider if it needs to reseed or not we could
use the former.

On an Amazon AWS Graviton3 VM this never failed, however this may not
be the case on low end CPUs so retry reading the random number 10 times
before returning an error.

Reviewed by:	imp, delphij (csprng)
Sponsored by:	The FreeBSD Foundation
Sponsored by:	Arm Ltd
Differential Revision:	https://reviews.freebsd.org/D35411
2023-11-15 18:05:08 +00:00
..
AL arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
ALLWINNER arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
ALTERA arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
AMD arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
ARM arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
BROADCOM arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
CAVIUM arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
DEFAULTS sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
GENERIC arm64: start defining a std.apple configuration 2023-09-08 00:53:51 -05:00
GENERIC-KASAN arm64: add a GENERIC-KASAN config 2023-03-23 16:34:33 -05:00
GENERIC-MMCCAM sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
GENERIC-MMCCAM-NODEBUG sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
GENERIC-NODEBUG sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
GENERIC-UP sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
HISILICON arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
IMX arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
LINT sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
LINT-ACPI sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
LINT-FDT sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
MARVELL arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
NOTES sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
NVIDIA arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
NXP arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
QCOM arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
ROCKCHIP arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
std.al arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
std.allwinner arm64: std.allwinner: Add aw_syscon 2021-07-19 17:31:57 +02:00
std.altera arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
std.amd arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
std.apple arm64: start defining a std.apple configuration 2023-09-08 00:53:51 -05:00
std.arm arm64: Add a driver for the Arm PL031 RTC 2023-08-15 13:13:39 +01:00
std.arm64 Add a COMPAT_FREEBSD14 kernel option 2023-10-10 11:48:22 +02:00
std.azure arm64: Move Azure-specific config from std.hyperv to std.azure 2023-03-14 04:12:31 +00:00
std.broadcom arm64: conf: std.broadcom: Add dwcotg and smsc 2021-08-05 13:16:23 +02:00
std.cavium arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
std.dev Add an Armv8 rndr random number provider 2023-11-15 18:05:08 +00:00
std.ec2 arm64: add a std.ec2 config 2022-10-27 10:39:55 -05:00
std.hisilicon arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
std.hyperv arm64: Delete redundant badly formatted and capitalised comment 2023-03-14 04:15:03 +00:00
std.imx Add ethernet to the standard drivers for imx8. 2021-09-28 11:18:51 -06:00
std.marvell gpio: Merge TCA6416 & TCA6408 drivers into TCA64XX 2022-09-19 09:18:08 +02:00
std.nvidia arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
std.nxp sff: Add SFP driver (fdt-based draft) 2023-08-18 12:40:11 +02:00
std.qcom qcom: fix panic in qcom_mdio_ipq4018 implementation 2023-08-11 02:12:55 +00:00
std.rockchip Add Combo PHY, RK817, Syr827, tcs4525 pmic devices to Rockchip specific config. 2023-01-08 03:07:18 +00:00
std.virt Add a virtio-gpu 2D driver 2023-08-17 12:26:57 +01:00
std.xilinx i2c: Add cadence iic driver 2023-10-03 09:56:20 +02:00
VIRT arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00
XILINX arm64: Add per SoC family kernel config 2021-07-18 16:11:08 +02:00