xref: /linux/drivers/acpi/apei/Kconfig (revision 47cf96fbe393839b125a9b694a8cfdd3f4216baa)
1# SPDX-License-Identifier: GPL-2.0
2config HAVE_ACPI_APEI
3	bool
4
5config HAVE_ACPI_APEI_NMI
6	bool
7
8config ACPI_APEI
9	bool "ACPI Platform Error Interface (APEI)"
10	select MISC_FILESYSTEMS
11	select PSTORE
12	select UEFI_CPER
13	depends on HAVE_ACPI_APEI
14	help
15	  APEI allows to report errors (for example from the chipset)
16	  to the operating system. This improves NMI handling
17	  especially. In addition it supports error serialization and
18	  error injection.
19
20config ACPI_APEI_GHES
21	bool "APEI Generic Hardware Error Source"
22	depends on ACPI_APEI
23	select ACPI_HED
24	select IRQ_WORK
25	select GENERIC_ALLOCATOR
26	select ARM_SDE_INTERFACE if ARM64
27	help
28	  Generic Hardware Error Source provides a way to report
29	  platform hardware errors (such as that from chipset). It
30	  works in so called "Firmware First" mode, that is, hardware
31	  errors are reported to firmware firstly, then reported to
32	  Linux by firmware. This way, some non-standard hardware
33	  error registers or non-standard hardware link can be checked
34	  by firmware to produce more valuable hardware error
35	  information for Linux.
36
37config ACPI_APEI_PCIEAER
38	bool "APEI PCIe AER logging/recovering support"
39	depends on ACPI_APEI && PCIEAER
40	help
41	  PCIe AER errors may be reported via APEI firmware first mode.
42	  Turn on this option to enable the corresponding support.
43
44config ACPI_APEI_SEA
45	bool
46	depends on ARM64 && ACPI_APEI_GHES
47	default y
48
49config ACPI_APEI_MEMORY_FAILURE
50	bool "APEI memory error recovering support"
51	depends on ACPI_APEI && MEMORY_FAILURE
52	help
53	  Memory errors may be reported via APEI firmware first mode.
54	  Turn on this option to enable the memory recovering support.
55
56config ACPI_APEI_EINJ
57	tristate "APEI Error INJection (EINJ)"
58	depends on ACPI_APEI && DEBUG_FS
59	help
60	  EINJ provides a hardware error injection mechanism, it is
61	  mainly used for debugging and testing the other parts of
62	  APEI and some other RAS features.
63
64config ACPI_APEI_EINJ_CXL
65	bool "CXL Error INJection Support"
66	default ACPI_APEI_EINJ
67	depends on ACPI_APEI_EINJ
68	depends on CXL_BUS && CXL_BUS <= ACPI_APEI_EINJ
69	help
70	  Support for CXL protocol Error INJection through debugfs/cxl.
71	  Availability and which errors are supported is dependent on
72	  the host platform. Look to ACPI v6.5 section 18.6.4 and kernel
73	  EINJ documentation for more information.
74
75	  If unsure say 'n'
76
77config ACPI_APEI_ERST_DEBUG
78	tristate "APEI Error Record Serialization Table (ERST) Debug Support"
79	depends on ACPI_APEI
80	help
81	  ERST is a way provided by APEI to save and retrieve hardware
82	  error information to and from a persistent store. Enable this
83	  if you want to debugging and testing the ERST kernel support
84	  and firmware implementation.
85