[PATCH v2] firmware: SDEI: Allow sdei initialization without ACPI_APEI_GHES
Gavin Shan
gshan at redhat.com
Wed May 7 17:24:42 PDT 2025
On 5/7/25 2:57 PM, Huang Yiwei wrote:
> SDEI usually initialize with the ACPI table, but on platforms where
> ACPI is not used, the SDEI feature can still be used to handle
> specific firmware calls or other customized purposes. Therefore, it
> is not necessary for ARM_SDE_INTERFACE to depend on ACPI_APEI_GHES.
>
> In commit dc4e8c07e9e2 ("ACPI: APEI: explicit init of HEST and GHES
> in acpi_init()"), to make APEI ready earlier, sdei_init was moved
> into acpi_ghes_init instead of being a standalone initcall, adding
> ACPI_APEI_GHES dependency to ARM_SDE_INTERFACE. This restricts the
> flexibility and usability of SDEI.
>
> This patch corrects the dependency in Kconfig and splits sdei_init()
> into two separate functions: sdei_init() and acpi_sdei_init().
> sdei_init() will be called by arch_initcall and will only initialize
> the platform driver, while acpi_sdei_init() will initialize the
> device from acpi_ghes_init() when ACPI is ready. This allows the
> initialization of SDEI without ACPI_APEI_GHES enabled.
>
> Fixes: dc4e8c07e9e2 ("ACPI: APEI: explicit init of HEST and GHES in apci_init()")
> Cc: Shuai Xue <xueshuai at linux.alibaba.com>
> Signed-off-by: Huang Yiwei <quic_hyiwei at quicinc.com>
> ---
> drivers/acpi/apei/Kconfig | 1 +
> drivers/acpi/apei/ghes.c | 2 +-
> drivers/firmware/Kconfig | 1 -
> drivers/firmware/arm_sdei.c | 11 ++++++++---
> include/linux/arm_sdei.h | 4 ++--
> 5 files changed, 12 insertions(+), 7 deletions(-)
>
Reviewed-by: Gavin Shan <gshan at redhat.com>
More information about the linux-arm-kernel
mailing list