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