It’s wild to think that the ARM Cortex-A72 was already announced ten years ago as the ARM core design that went on to appear in the Raspberry Pi 4, AWS Graviton server processor, and various other SoCs. ARM Cortex-A72 based hardware remains in widespread use and finally by the end of 2025 there will be a mainline Error Detection And Correction “EDAC” driver in the mainline Linux kernel for this core.
Queued up in the “edac-for-next” Git branch ahead of the Linux 6.18 merge window is the “a72_edac” driver for error detection/reporting of A72 cores. The focus is on errors within the A72’s L1 and L2 cache systems.
The a2_edac driver patch explains:
“The driver is designed to support error detection and reporting for Cortex A72 cores, specifically within their L1 and L2 cache systems. The errors are detected by reading CPU/L2 memory error syndrome registers.
Unfortunately there is no robust way to inject errors into the caches, so this driver doesn’t contain any code to actually test it. It has been tested though with code taken from an older version of this driver. For reasons stated in thread, the error injection code is not suitable for mainline, so it is removed from the driver.”
Better late than never on this ARM Cortex A72 EDAC driver for the mainline kernel. Also somewhat entertaining is that it was a Microsoft engineer (Vijay Balakrishna) who was submitting these patches for review of the out-of-tree driver started by Sascha Hauer of Pengutronix. Microsoft’s motivation for getting this ARM driver into the Linux kernel, of course, comes down to Azure and the first generation Graviton server processor using A72 cores.