opnsense-src/sys/dev/psci
Andrew Turner 0c333f8c6e psci: Support the arm64 Errata ABI
Add support for the Arm Errata Management Firmware Interface (Errata
ABI) [1]. This provides an interface for the kernel to query the status
of an erratum workaround.

Some errata may be mitigated depending on the other hardware in a SoC,
e.g. Cortex-A78 erratum 2712571 is not affected in systems that use
an Arm interconnect. As there may not be a way for the kernel to know
if this is the case then it would have to implement the workaround
even when not needed.

There are other cases where the needed workaround is implemented in
firmware and if not implemented then the kernel may decide to not use
a feature. In this case we can query the firmware before deciding if
we should use a feature or now.

There is a known issue with some firmware implementations of the Errata
ABI that incorrectly returns a status indicating the erratum is fully
mitigated by the firmware, however there is a kernel component needed,
e.g. Neoverse-N1 erratum 1542419. To handle this case we tell the
caller there is some workaround implemented in the firmware and it can
decide how to handle it. If this is fixed in a way we can detect we can
add a new erratum status value to indicate this.

[1] https://developer.arm.com/documentation/den0100/latest/

Sponsored by:	Arm Ltd
Differential Revision:	https://reviews.freebsd.org/D48055
2025-01-24 12:09:28 +00:00
..
psci.c Replace calls to bus_generic_attach with bus_attach_children 2024-12-06 17:26:16 -05:00
psci.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
smccc.c Replace calls to bus_generic_attach with bus_attach_children 2024-12-06 17:26:16 -05:00
smccc.h dev/psci: Add SMCCC_MAKE_VERSION 2024-10-15 18:24:42 +01:00
smccc_arm.S sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
smccc_arm64.S arm64: Support BTI checking in most of the kernel 2024-06-05 09:23:40 +00:00
smccc_errata.c psci: Support the arm64 Errata ABI 2025-01-24 12:09:28 +00:00
smccc_trng.c sys: Add an SMCCC Random Number Generator driver 2024-10-15 18:24:42 +01:00