^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) # ACPI Configuration
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) config ARCH_SUPPORTS_ACPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) menuconfig ACPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) bool "ACPI (Advanced Configuration and Power Interface) Support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) depends on ARCH_SUPPORTS_ACPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) select PNP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) select NLS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) default y if X86
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) Advanced Configuration and Power Interface (ACPI) support for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) Linux requires an ACPI-compliant platform (hardware/firmware),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) and assumes the presence of OS-directed configuration and power
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) management (OSPM) software. This option will enlarge your
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) kernel by about 70K.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) Linux ACPI provides a robust functional replacement for several
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) legacy configuration and power management interfaces, including
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) the Plug-and-Play BIOS specification (PnP BIOS), the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) MultiProcessor Specification (MPS), and the Advanced Power
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) Management (APM) specification. If both ACPI and APM support
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) are configured, ACPI is used.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) The project home page for the Linux ACPI subsystem is here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) <https://01.org/linux-acpi>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) Linux support for ACPI is based on Intel Corporation's ACPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) Component Architecture (ACPI CA). For more information on the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) ACPI CA, see:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) <https://acpica.org/>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) ACPI is an open industry specification originally co-developed by
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) Hewlett-Packard, Intel, Microsoft, Phoenix, and Toshiba. Currently,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) it is developed by the ACPI Specification Working Group (ASWG) under
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) the UEFI Forum and any UEFI member can join the ASWG and contribute
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) to the ACPI specification.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) The specification is available at:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) <https://uefi.org/specifications>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) if ACPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) config ACPI_LEGACY_TABLES_LOOKUP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) config ARCH_MIGHT_HAVE_ACPI_PDC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) config ACPI_GENERIC_GSI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) config ACPI_SYSTEM_POWER_STATES_SUPPORT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) config ACPI_CCA_REQUIRED
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) config ACPI_DEBUGGER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) bool "AML debugger interface"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) select ACPI_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) Enable in-kernel debugging of AML facilities: statistics,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) internal object dump, single step control method execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) This is still under development, currently enabling this only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) results in the compilation of the ACPICA debugger files.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) if ACPI_DEBUGGER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) config ACPI_DEBUGGER_USER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) tristate "Userspace debugger accessiblity"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) depends on DEBUG_FS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) Export /sys/kernel/debug/acpi/acpidbg for userspace utilities
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) to access the debugger functionalities.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) config ACPI_SPCR_TABLE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) bool "ACPI Serial Port Console Redirection Support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) default y if X86
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) Enable support for Serial Port Console Redirection (SPCR) Table.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) This table provides information about the configuration of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) earlycon console.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) config ACPI_LPIT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) depends on X86_64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) config ACPI_SLEEP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) depends on SUSPEND || HIBERNATION
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) depends on ACPI_SYSTEM_POWER_STATES_SUPPORT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) config ACPI_REV_OVERRIDE_POSSIBLE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) bool "Allow supported ACPI revision to be overridden"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) depends on X86
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) The platform firmware on some systems expects Linux to return "5" as
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) the supported ACPI revision which makes it expose system configuration
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) information in a special way.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) For example, based on what ACPI exports as the supported revision,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) Dell XPS 13 (2015) configures its audio device to either work in HDA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) mode or in I2S mode, where the former is supposed to be used on Linux
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) until the latter is fully supported (in the kernel as well as in user
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) space).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) This option enables a DMI-based quirk for the above Dell machine (so
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) that HDA audio is exposed by the platform firmware to the kernel) and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) makes it possible to force the kernel to return "5" as the supported
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) ACPI revision via the "acpi_rev_override" command line switch.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) config ACPI_EC_DEBUGFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) tristate "EC read/write access through /sys/kernel/debug/ec"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) Say N to disable Embedded Controller /sys/kernel/debug interface
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) Be aware that using this interface can confuse your Embedded
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) Controller in a way that a normal reboot is not enough. You then
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) have to power off your system, and remove the laptop battery for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) some seconds.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) An Embedded Controller typically is available on laptops and reads
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) sensor values like battery state and temperature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) The kernel accesses the EC through ACPI parsed code provided by BIOS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) tables. This option allows to access the EC directly without ACPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) code being involved.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) Thus this option is a debug option that helps to write ACPI drivers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) and can be used to identify ACPI code or EC firmware bugs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) config ACPI_AC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) tristate "AC Adapter"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) select POWER_SUPPLY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) This driver supports the AC Adapter object, which indicates
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) whether a system is on AC or not. If you have a system that can
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) switch between A/C and battery, say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) To compile this driver as a module, choose M here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) the module will be called ac.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) config ACPI_BATTERY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) tristate "Battery"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) select POWER_SUPPLY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) This driver adds support for battery information through
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) /proc/acpi/battery. If you have a mobile system with a battery,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) To compile this driver as a module, choose M here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) the module will be called battery.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) config ACPI_BUTTON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) tristate "Button"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) depends on INPUT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) This driver handles events on the power, sleep, and lid buttons.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) A daemon reads events from input devices or via netlink and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) performs user-defined actions such as shutting down the system.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) This is necessary for software-controlled poweroff.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) To compile this driver as a module, choose M here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) the module will be called button.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) config ACPI_TINY_POWER_BUTTON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) tristate "Tiny Power Button Driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) depends on !ACPI_BUTTON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) This driver provides a tiny alternative to the ACPI Button driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) The tiny power button driver only handles the power button. Rather
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) than notifying userspace via the input layer or a netlink event, this
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) driver directly signals the init process to shut down.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) This driver is particularly suitable for cloud and VM environments,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) which use a simulated power button to initiate a controlled poweroff,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) but which may not want to run a separate userspace daemon to process
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) input events.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) config ACPI_TINY_POWER_BUTTON_SIGNAL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) int "Tiny Power Button Signal"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) depends on ACPI_TINY_POWER_BUTTON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) default 38
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) Default signal to send to init in response to the power button.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) Likely values here include 38 (SIGRTMIN+4) to power off, or 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) (SIGINT) to simulate Ctrl+Alt+Del.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) config ACPI_VIDEO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) tristate "Video"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) depends on X86 && BACKLIGHT_CLASS_DEVICE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) depends on INPUT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) select THERMAL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) This driver implements the ACPI Extensions For Display Adapters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) for integrated graphics devices on motherboard, as specified in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) ACPI 2.0 Specification, Appendix B. This supports basic operations
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) such as defining the video POST device, retrieving EDID information,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) and setting up a video output.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) To compile this driver as a module, choose M here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) the module will be called video.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) config ACPI_FAN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) tristate "Fan"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) depends on THERMAL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) This driver supports ACPI fan devices, allowing user-mode
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) applications to perform basic fan control (on, off, status).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) To compile this driver as a module, choose M here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) the module will be called fan.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) config ACPI_TAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) tristate "ACPI Time and Alarm (TAD) Device Support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) depends on SYSFS && PM_SLEEP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) The ACPI Time and Alarm (TAD) device is an alternative to the Real
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) Time Clock (RTC). Its wake timers allow the system to transition from
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) the S3 (or optionally S4/S5) state to S0 state after a time period
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) elapses. In comparison with the RTC Alarm, the TAD provides a larger
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) scale of flexibility in the wake timers. The time capabilities of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) TAD maintain the time of day information across platform power
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) transitions, and keep track of time even when the platform is turned
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) off.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) config ACPI_DOCK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) bool "Dock"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) This driver supports ACPI-controlled docking stations and removable
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) drive bays such as the IBM Ultrabay and the Dell Module Bay.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) config ACPI_CPU_FREQ_PSS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) select THERMAL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) config ACPI_PROCESSOR_CSTATE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) def_bool y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) depends on ACPI_PROCESSOR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) depends on IA64 || X86
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) config ACPI_PROCESSOR_IDLE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) select CPU_IDLE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) config ACPI_MCFG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) config ACPI_CPPC_LIB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) depends on ACPI_PROCESSOR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) select MAILBOX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) select PCC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) If this option is enabled, this file implements common functionality
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) to parse CPPC tables as described in the ACPI 5.1+ spec. The
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) routines implemented are meant to be used by other
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) drivers to control CPU performance using CPPC semantics.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) If your platform does not support CPPC in firmware,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) leave this option disabled.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) config ACPI_PROCESSOR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) tristate "Processor"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) depends on X86 || IA64 || ARM64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) select ACPI_PROCESSOR_IDLE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) select ACPI_CPU_FREQ_PSS if X86 || IA64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) This driver adds support for the ACPI Processor package. It is required
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) by several flavors of cpufreq performance-state, thermal, throttling and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) idle drivers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) To compile this driver as a module, choose M here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285) the module will be called processor.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287) config ACPI_IPMI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) tristate "IPMI"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) depends on IPMI_HANDLER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) This driver enables the ACPI to access the BMC controller. And it
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) uses the IPMI request/response message to communicate with BMC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) controller, which can be found on on the server.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) To compile this driver as a module, choose M here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) the module will be called as acpi_ipmi.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) config ACPI_HOTPLUG_CPU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) depends on ACPI_PROCESSOR && HOTPLUG_CPU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) select ACPI_CONTAINER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) config ACPI_PROCESSOR_AGGREGATOR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305) tristate "Processor Aggregator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306) depends on ACPI_PROCESSOR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) depends on X86
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) ACPI 4.0 defines processor Aggregator, which enables OS to perform
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) specific processor configuration and control that applies to all
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) processors in the platform. Currently only logical processor idling
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) is defined, which is to reduce power consumption. This driver
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) supports the new device.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) config ACPI_THERMAL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316) tristate "Thermal Zone"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) depends on ACPI_PROCESSOR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318) select THERMAL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321) This driver supports ACPI thermal zones. Most mobile and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322) some desktop systems support ACPI thermal zones. It is HIGHLY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) recommended that this option be enabled, as your processor(s)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324) may be damaged without it.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326) To compile this driver as a module, choose M here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327) the module will be called thermal.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329) config ACPI_CUSTOM_DSDT_FILE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330) string "Custom DSDT Table file to include"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331) default ""
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) depends on !STANDALONE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 333) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 334) This option supports a custom DSDT by linking it into the kernel.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 335) See Documentation/admin-guide/acpi/dsdt-override.rst
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 336)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 337) Enter the full path name to the file which includes the AmlCode
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 338) or dsdt_aml_code declaration.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 339)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 340) If unsure, don't enter a file name.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 341)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 342) config ACPI_CUSTOM_DSDT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 343) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 344) default ACPI_CUSTOM_DSDT_FILE != ""
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 345)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 346) config ARCH_HAS_ACPI_TABLE_UPGRADE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 347) def_bool n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 348)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 349) config ACPI_TABLE_UPGRADE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 350) bool "Allow upgrading ACPI tables via initrd"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 351) depends on BLK_DEV_INITRD && ARCH_HAS_ACPI_TABLE_UPGRADE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 352) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 353) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 354) This option provides functionality to upgrade arbitrary ACPI tables
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 355) via initrd. No functional change if no ACPI tables are passed via
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 356) initrd, therefore it's safe to say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 357) See Documentation/admin-guide/acpi/initrd_table_override.rst for details
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 358)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 359) config ACPI_TABLE_OVERRIDE_VIA_BUILTIN_INITRD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 360) bool "Override ACPI tables from built-in initrd"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 361) depends on ACPI_TABLE_UPGRADE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 362) depends on INITRAMFS_SOURCE!="" && INITRAMFS_COMPRESSION_NONE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 363) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 364) This option provides functionality to override arbitrary ACPI tables
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 365) from built-in uncompressed initrd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 366)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 367) See Documentation/admin-guide/acpi/initrd_table_override.rst for details
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 368)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 369) config ACPI_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 370) bool "Debug Statements"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 371) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 372) The ACPI subsystem can produce debug output. Saying Y enables this
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 373) output and increases the kernel size by around 50K.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 374)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 375) Use the acpi.debug_layer and acpi.debug_level kernel command-line
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 376) parameters documented in Documentation/firmware-guide/acpi/debug.rst and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 377) Documentation/admin-guide/kernel-parameters.rst to control the type and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 378) amount of debug output.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 379)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 380) config ACPI_PCI_SLOT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 381) bool "PCI slot detection driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 382) depends on SYSFS && PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 383) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 384) This driver creates entries in /sys/bus/pci/slots/ for all PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 385) slots in the system. This can help correlate PCI bus addresses,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 386) i.e., segment/bus/device/function tuples, with physical slots in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 387) the system. If you are unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 388)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 389) config ACPI_CONTAINER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 390) bool "Container and Module Devices"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 391) default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 392) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 393) This driver supports ACPI Container and Module devices (IDs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 394) ACPI0004, PNP0A05, and PNP0A06).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 395)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 396) This helps support hotplug of nodes, CPUs, and memory.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 397)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 398) To compile this driver as a module, choose M here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 399) the module will be called container.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 400)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 401) config ACPI_HOTPLUG_MEMORY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 402) bool "Memory Hotplug"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 403) depends on MEMORY_HOTPLUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 404) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 405) This driver supports ACPI memory hotplug. The driver
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 406) fields notifications on ACPI memory devices (PNP0C80),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 407) which represent memory ranges that may be onlined or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 408) offlined during runtime.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 409)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 410) If your hardware and firmware do not support adding or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 411) removing memory devices at runtime, you need not enable
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 412) this driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 413)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 414) To compile this driver as a module, choose M here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 415) the module will be called acpi_memhotplug.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 416)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 417) config ACPI_HOTPLUG_IOAPIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 418) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 419) depends on PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 420) depends on X86_IO_APIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 421) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 422)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 423) config ACPI_SBS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 424) tristate "Smart Battery System"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 425) depends on X86
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 426) select POWER_SUPPLY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 427) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 428) This driver supports the Smart Battery System, another
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 429) type of access to battery information, found on some laptops.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 430)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 431) To compile this driver as a module, choose M here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 432) the modules will be called sbs and sbshc.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 433)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 434) config ACPI_HED
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 435) tristate "Hardware Error Device"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 436) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 437) This driver supports the Hardware Error Device (PNP0C33),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 438) which is used to report some hardware errors notified via
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 439) SCI, mainly the corrected errors.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 440)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 441) config ACPI_CUSTOM_METHOD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 442) tristate "Allow ACPI methods to be inserted/replaced at run time"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 443) depends on DEBUG_FS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 444) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 445) This debug facility allows ACPI AML methods to be inserted and/or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 446) replaced without rebooting the system. For details refer to:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 447) Documentation/firmware-guide/acpi/method-customizing.rst.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 448)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 449) NOTE: This option is security sensitive, because it allows arbitrary
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 450) kernel memory to be written to by root (uid=0) users, allowing them
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 451) to bypass certain security measures (e.g. if root is not allowed to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 452) load additional kernel modules after boot, this feature may be used
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 453) to override that restriction).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 454)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 455) config ACPI_BGRT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 456) bool "Boottime Graphics Resource Table support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 457) depends on EFI && (X86 || ARM64)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 458) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 459) This driver adds support for exposing the ACPI Boottime Graphics
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 460) Resource Table, which allows the operating system to obtain
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 461) data from the firmware boot splash. It will appear under
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 462) /sys/firmware/acpi/bgrt/ .
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 463)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 464) config ACPI_REDUCED_HARDWARE_ONLY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 465) bool "Hardware-reduced ACPI support only" if EXPERT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 466) def_bool n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 467) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 468) This config item changes the way the ACPI code is built. When this
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 469) option is selected, the kernel will use a specialized version of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 470) ACPICA that ONLY supports the ACPI "reduced hardware" mode. The
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 471) resulting kernel will be smaller but it will also be restricted to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 472) running in ACPI reduced hardware mode ONLY.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 473)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 474) If you are unsure what to do, do not enable this option.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 475)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 476) source "drivers/acpi/nfit/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 477) source "drivers/acpi/numa/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 478) source "drivers/acpi/apei/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 479) source "drivers/acpi/dptf/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 480)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 481) config ACPI_WATCHDOG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 482) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 483)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 484) config ACPI_EXTLOG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 485) tristate "Extended Error Log support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 486) depends on X86_MCE && X86_LOCAL_APIC && EDAC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 487) select UEFI_CPER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 488) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 489) Certain usages such as Predictive Failure Analysis (PFA) require
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 490) more information about the error than what can be described in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 491) processor machine check banks. Most server processors log
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 492) additional information about the error in processor uncore
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 493) registers. Since the addresses and layout of these registers vary
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 494) widely from one processor to another, system software cannot
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 495) readily make use of them. To complicate matters further, some of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 496) the additional error information cannot be constructed without
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 497) detailed knowledge about platform topology.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 498)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 499) Enhanced MCA Logging allows firmware to provide additional error
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 500) information to system software, synchronous with MCE or CMCI. This
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 501) driver adds support for that functionality with corresponding
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 502) tracepoint which carries that information to userspace.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 503)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 504) config ACPI_ADXL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 505) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 506)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 507) config ACPI_CONFIGFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 508) tristate "ACPI configfs support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 509) select CONFIGFS_FS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 510) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 511) Select this option to enable support for ACPI configuration from
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 512) userspace. The configurable ACPI groups will be visible under
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 513) /config/acpi, assuming configfs is mounted under /config.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 514)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 515) if ARM64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 516) source "drivers/acpi/arm64/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 517)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 518) config ACPI_PPTT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 519) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 520) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 521)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 522) source "drivers/acpi/pmic/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 523)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 524) endif # ACPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 525)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 526) config X86_PM_TIMER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 527) bool "Power Management Timer Support" if EXPERT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 528) depends on X86 && (ACPI || JAILHOUSE_GUEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 529) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 530) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 531) The Power Management Timer is available on all ACPI-capable,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 532) in most cases even if ACPI is unusable or blacklisted.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 533)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 534) This timing source is not affected by power management features
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 535) like aggressive processor idling, throttling, frequency and/or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 536) voltage scaling, unlike the commonly used Time Stamp Counter
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 537) (TSC) timing source.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 538)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 539) You should nearly always say Y here because many modern
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 540) systems require this timer.