18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ciconfig HAVE_ACPI_APEI
38c2ecf20Sopenharmony_ci	bool
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ciconfig HAVE_ACPI_APEI_NMI
68c2ecf20Sopenharmony_ci	bool
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ciconfig ACPI_APEI
98c2ecf20Sopenharmony_ci	bool "ACPI Platform Error Interface (APEI)"
108c2ecf20Sopenharmony_ci	select MISC_FILESYSTEMS
118c2ecf20Sopenharmony_ci	select PSTORE
128c2ecf20Sopenharmony_ci	select UEFI_CPER
138c2ecf20Sopenharmony_ci	depends on HAVE_ACPI_APEI
148c2ecf20Sopenharmony_ci	help
158c2ecf20Sopenharmony_ci	  APEI allows to report errors (for example from the chipset)
168c2ecf20Sopenharmony_ci	  to the operating system. This improves NMI handling
178c2ecf20Sopenharmony_ci	  especially. In addition it supports error serialization and
188c2ecf20Sopenharmony_ci	  error injection.
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ciconfig ACPI_APEI_GHES
218c2ecf20Sopenharmony_ci	bool "APEI Generic Hardware Error Source"
228c2ecf20Sopenharmony_ci	depends on ACPI_APEI
238c2ecf20Sopenharmony_ci	select ACPI_HED
248c2ecf20Sopenharmony_ci	select IRQ_WORK
258c2ecf20Sopenharmony_ci	select GENERIC_ALLOCATOR
268c2ecf20Sopenharmony_ci	help
278c2ecf20Sopenharmony_ci	  Generic Hardware Error Source provides a way to report
288c2ecf20Sopenharmony_ci	  platform hardware errors (such as that from chipset). It
298c2ecf20Sopenharmony_ci	  works in so called "Firmware First" mode, that is, hardware
308c2ecf20Sopenharmony_ci	  errors are reported to firmware firstly, then reported to
318c2ecf20Sopenharmony_ci	  Linux by firmware. This way, some non-standard hardware
328c2ecf20Sopenharmony_ci	  error registers or non-standard hardware link can be checked
338c2ecf20Sopenharmony_ci	  by firmware to produce more valuable hardware error
348c2ecf20Sopenharmony_ci	  information for Linux.
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ciconfig ACPI_APEI_PCIEAER
378c2ecf20Sopenharmony_ci	bool "APEI PCIe AER logging/recovering support"
388c2ecf20Sopenharmony_ci	depends on ACPI_APEI && PCIEAER
398c2ecf20Sopenharmony_ci	help
408c2ecf20Sopenharmony_ci	  PCIe AER errors may be reported via APEI firmware first mode.
418c2ecf20Sopenharmony_ci	  Turn on this option to enable the corresponding support.
428c2ecf20Sopenharmony_ci
438c2ecf20Sopenharmony_ciconfig ACPI_APEI_SEA
448c2ecf20Sopenharmony_ci	bool
458c2ecf20Sopenharmony_ci	depends on ARM64 && ACPI_APEI_GHES
468c2ecf20Sopenharmony_ci	default y
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_ciconfig ACPI_APEI_MEMORY_FAILURE
498c2ecf20Sopenharmony_ci	bool "APEI memory error recovering support"
508c2ecf20Sopenharmony_ci	depends on ACPI_APEI && MEMORY_FAILURE
518c2ecf20Sopenharmony_ci	help
528c2ecf20Sopenharmony_ci	  Memory errors may be reported via APEI firmware first mode.
538c2ecf20Sopenharmony_ci	  Turn on this option to enable the memory recovering support.
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ciconfig ACPI_APEI_EINJ
568c2ecf20Sopenharmony_ci	tristate "APEI Error INJection (EINJ)"
578c2ecf20Sopenharmony_ci	depends on ACPI_APEI && DEBUG_FS
588c2ecf20Sopenharmony_ci	help
598c2ecf20Sopenharmony_ci	  EINJ provides a hardware error injection mechanism, it is
608c2ecf20Sopenharmony_ci	  mainly used for debugging and testing the other parts of
618c2ecf20Sopenharmony_ci	  APEI and some other RAS features.
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ciconfig ACPI_APEI_ERST_DEBUG
648c2ecf20Sopenharmony_ci	tristate "APEI Error Record Serialization Table (ERST) Debug Support"
658c2ecf20Sopenharmony_ci	depends on ACPI_APEI
668c2ecf20Sopenharmony_ci	help
678c2ecf20Sopenharmony_ci	  ERST is a way provided by APEI to save and retrieve hardware
688c2ecf20Sopenharmony_ci	  error information to and from a persistent store. Enable this
698c2ecf20Sopenharmony_ci	  if you want to debugging and testing the ERST kernel support
708c2ecf20Sopenharmony_ci	  and firmware implementation.
71