#
0c333f8c |
| 24-Jan-2025 |
Andrew Turner <andrew@FreeBSD.org> |
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 workarou
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
show more ...
|