xref: /linux/drivers/acpi/apei/Kconfig (revision 47cf96fbe393839b125a9b694a8cfdd3f4216baa)
1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0
244a69f61STomasz Nowickiconfig HAVE_ACPI_APEI
344a69f61STomasz Nowicki	bool
444a69f61STomasz Nowicki
544a69f61STomasz Nowickiconfig HAVE_ACPI_APEI_NMI
644a69f61STomasz Nowicki	bool
744a69f61STomasz Nowicki
8a643ce20SHuang Yingconfig ACPI_APEI
9a643ce20SHuang Ying	bool "ACPI Platform Error Interface (APEI)"
105d2a8342SLuck, Tony	select MISC_FILESYSTEMS
110bb77c46STony Luck	select PSTORE
127ea6c6c1SLuck, Tony	select UEFI_CPER
1344a69f61STomasz Nowicki	depends on HAVE_ACPI_APEI
14a643ce20SHuang Ying	help
15a643ce20SHuang Ying	  APEI allows to report errors (for example from the chipset)
16a643ce20SHuang Ying	  to the operating system. This improves NMI handling
17a643ce20SHuang Ying	  especially. In addition it supports error serialization and
18a643ce20SHuang Ying	  error injection.
19e4021345SHuang Ying
20d334a491SHuang Yingconfig ACPI_APEI_GHES
2186cd4733SHuang Ying	bool "APEI Generic Hardware Error Source"
2251572753STomasz Nowicki	depends on ACPI_APEI
23d334a491SHuang Ying	select ACPI_HED
2403ba176aSChen Gong	select IRQ_WORK
2567eb2e99SHuang Ying	select GENERIC_ALLOCATOR
26*59529bbeSHuang Yiwei	select ARM_SDE_INTERFACE if ARM64
27d334a491SHuang Ying	help
28d334a491SHuang Ying	  Generic Hardware Error Source provides a way to report
29d334a491SHuang Ying	  platform hardware errors (such as that from chipset). It
30d334a491SHuang Ying	  works in so called "Firmware First" mode, that is, hardware
31d334a491SHuang Ying	  errors are reported to firmware firstly, then reported to
32d334a491SHuang Ying	  Linux by firmware. This way, some non-standard hardware
33d334a491SHuang Ying	  error registers or non-standard hardware link can be checked
34d334a491SHuang Ying	  by firmware to produce more valuable hardware error
35d334a491SHuang Ying	  information for Linux.
36d334a491SHuang Ying
37c413d768SHuang Yingconfig ACPI_APEI_PCIEAER
38c413d768SHuang Ying	bool "APEI PCIe AER logging/recovering support"
39c413d768SHuang Ying	depends on ACPI_APEI && PCIEAER
40c413d768SHuang Ying	help
41c413d768SHuang Ying	  PCIe AER errors may be reported via APEI firmware first mode.
42c413d768SHuang Ying	  Turn on this option to enable the corresponding support.
43c413d768SHuang Ying
447edda088STyler Baicarconfig ACPI_APEI_SEA
45255097c8SJames Morse	bool
467edda088STyler Baicar	depends on ARM64 && ACPI_APEI_GHES
477edda088STyler Baicar	default y
487edda088STyler Baicar
49ba61ca4aSHuang Yingconfig ACPI_APEI_MEMORY_FAILURE
50ba61ca4aSHuang Ying	bool "APEI memory error recovering support"
51ba61ca4aSHuang Ying	depends on ACPI_APEI && MEMORY_FAILURE
52ba61ca4aSHuang Ying	help
53ba61ca4aSHuang Ying	  Memory errors may be reported via APEI firmware first mode.
54ba61ca4aSHuang Ying	  Turn on this option to enable the memory recovering support.
55ba61ca4aSHuang Ying
56e4021345SHuang Yingconfig ACPI_APEI_EINJ
57e4021345SHuang Ying	tristate "APEI Error INJection (EINJ)"
58e4021345SHuang Ying	depends on ACPI_APEI && DEBUG_FS
59e4021345SHuang Ying	help
60e4021345SHuang Ying	  EINJ provides a hardware error injection mechanism, it is
61e4021345SHuang Ying	  mainly used for debugging and testing the other parts of
62e4021345SHuang Ying	  APEI and some other RAS features.
632ff729d5SHuang Ying
6412fb28eaSBen Cheathamconfig ACPI_APEI_EINJ_CXL
6512fb28eaSBen Cheatham	bool "CXL Error INJection Support"
6612fb28eaSBen Cheatham	default ACPI_APEI_EINJ
6712fb28eaSBen Cheatham	depends on ACPI_APEI_EINJ
6812fb28eaSBen Cheatham	depends on CXL_BUS && CXL_BUS <= ACPI_APEI_EINJ
6912fb28eaSBen Cheatham	help
7012fb28eaSBen Cheatham	  Support for CXL protocol Error INJection through debugfs/cxl.
7112fb28eaSBen Cheatham	  Availability and which errors are supported is dependent on
7212fb28eaSBen Cheatham	  the host platform. Look to ACPI v6.5 section 18.6.4 and kernel
7312fb28eaSBen Cheatham	  EINJ documentation for more information.
7412fb28eaSBen Cheatham
7512fb28eaSBen Cheatham	  If unsure say 'n'
7612fb28eaSBen Cheatham
772ff729d5SHuang Yingconfig ACPI_APEI_ERST_DEBUG
782ff729d5SHuang Ying	tristate "APEI Error Record Serialization Table (ERST) Debug Support"
792ff729d5SHuang Ying	depends on ACPI_APEI
802ff729d5SHuang Ying	help
812ff729d5SHuang Ying	  ERST is a way provided by APEI to save and retrieve hardware
8258f87ed0SLucas De Marchi	  error information to and from a persistent store. Enable this
832ff729d5SHuang Ying	  if you want to debugging and testing the ERST kernel support
842ff729d5SHuang Ying	  and firmware implementation.
85