xref: /openbmc/linux/drivers/acpi/apei/Kconfig (revision a72594ca)
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	help
27	  Generic Hardware Error Source provides a way to report
28	  platform hardware errors (such as that from chipset). It
29	  works in so called "Firmware First" mode, that is, hardware
30	  errors are reported to firmware firstly, then reported to
31	  Linux by firmware. This way, some non-standard hardware
32	  error registers or non-standard hardware link can be checked
33	  by firmware to produce more valuable hardware error
34	  information for Linux.
35
36config ACPI_APEI_PCIEAER
37	bool "APEI PCIe AER logging/recovering support"
38	depends on ACPI_APEI && PCIEAER
39	help
40	  PCIe AER errors may be reported via APEI firmware first mode.
41	  Turn on this option to enable the corresponding support.
42
43config ACPI_APEI_SEA
44	bool "APEI Synchronous External Abort logging/recovering support"
45	depends on ARM64 && ACPI_APEI_GHES
46	default y
47	help
48	  This option should be enabled if the system supports
49	  firmware first handling of SEA (Synchronous External Abort).
50	  SEA happens with certain faults of data abort or instruction
51	  abort synchronous exceptions on ARMv8 systems. If a system
52	  supports firmware first handling of SEA, the platform analyzes
53	  and handles hardware error notifications from SEA, and it may then
54	  form a HW error record for the OS to parse and handle. This
55	  option allows the OS to look for such hardware error record, and
56	  take appropriate action.
57
58config ACPI_APEI_MEMORY_FAILURE
59	bool "APEI memory error recovering support"
60	depends on ACPI_APEI && MEMORY_FAILURE
61	help
62	  Memory errors may be reported via APEI firmware first mode.
63	  Turn on this option to enable the memory recovering support.
64
65config ACPI_APEI_EINJ
66	tristate "APEI Error INJection (EINJ)"
67	depends on ACPI_APEI && DEBUG_FS
68	help
69	  EINJ provides a hardware error injection mechanism, it is
70	  mainly used for debugging and testing the other parts of
71	  APEI and some other RAS features.
72
73config ACPI_APEI_ERST_DEBUG
74	tristate "APEI Error Record Serialization Table (ERST) Debug Support"
75	depends on ACPI_APEI
76	help
77	  ERST is a way provided by APEI to save and retrieve hardware
78	  error information to and from a persistent store. Enable this
79	  if you want to debugging and testing the ERST kernel support
80	  and firmware implementation.
81