[PATCH 11/12] ras: add DeviceTree estatus provider driver

Will Deacon will at kernel.org
Thu Dec 18 04:13:25 PST 2025


On Wed, Dec 17, 2025 at 11:28:44AM +0000, Ahmed Tiba wrote:
> Introduce a platform driver that maps the CPER status block described
> in DeviceTree, feeds it into the estatus core and handles either IRQ- or
> poll-driven notifications. Arm64 gains a FIX_ESTATUS_IRQ slot so the
> driver can safely map the shared buffer while copying records.
> 
> Signed-off-by: Ahmed Tiba <ahmed.tiba at arm.com>
> ---
>  MAINTAINERS                     |   1 +
>  arch/arm64/include/asm/fixmap.h |   5 +
>  drivers/ras/Kconfig             |  14 ++
>  drivers/ras/Makefile            |   1 +
>  drivers/ras/estatus-dt.c        | 318 ++++++++++++++++++++++++++++++++
>  include/linux/estatus.h         |   3 +-
>  6 files changed, 341 insertions(+), 1 deletion(-)
>  create mode 100644 drivers/ras/estatus-dt.c
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 6b2ef2ddc0c7..5567d5e82053 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -21761,6 +21761,7 @@ RAS ERROR STATUS
>  M:	Ahmed Tiba <ahmed.tiba at arm.com>
>  S:	Maintained
>  F:	Documentation/devicetree/bindings/ras/arm,ras-ffh.yaml
> +F:	drivers/ras/estatus-dt.c
>  F:	drivers/firmware/efi/estatus.c
>  F:	include/linux/estatus.h
>  
> diff --git a/arch/arm64/include/asm/fixmap.h b/arch/arm64/include/asm/fixmap.h
> index 65555284446e..85ffba87bab9 100644
> --- a/arch/arm64/include/asm/fixmap.h
> +++ b/arch/arm64/include/asm/fixmap.h
> @@ -64,6 +64,11 @@ enum fixed_addresses {
>  #endif
>  #endif /* CONFIG_ACPI_APEI_GHES */
>  
> +#ifdef CONFIG_RAS_ESTATUS_DT
> +	/* Used for ESTATUS mapping from assorted contexts */
> +	FIX_ESTATUS_IRQ,
> +#endif /* CONFIG_RAS_ESTATUS_DT */

Why do we need this in addition to the four existing GHES slots? The DT
code doesn't use it and I was assuming that the ACPI code would continue
to use the existing irq; is that not the case?

Will



More information about the linux-arm-kernel mailing list