blob: 25dbb76c02ccb0fd1d9b56d9956acb115d2e8419 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# ACPI Configuration
3#
4
Jan Engelhardt3f2c48c2007-07-03 01:40:59 -04005menuconfig ACPI
Frans Pop355ee5e2007-10-29 17:20:38 -04006 bool "ACPI (Advanced Configuration and Power Interface) Support"
Linus Torvalds1da177e2005-04-16 15:20:36 -07007 depends on !IA64_HP_SIM
Graeme Gregoryb6a02172015-03-24 14:02:53 +00008 depends on IA64 || X86 || (ARM64 && EXPERT)
Adrian Bunk13001242006-03-28 17:04:00 -05009 depends on PCI
Len Brown243b66e2007-02-15 22:34:36 -050010 select PNP
Linus Torvalds1da177e2005-04-16 15:20:36 -070011 default y
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -070012 help
Linus Torvalds1da177e2005-04-16 15:20:36 -070013 Advanced Configuration and Power Interface (ACPI) support for
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -070014 Linux requires an ACPI-compliant platform (hardware/firmware),
Linus Torvalds1da177e2005-04-16 15:20:36 -070015 and assumes the presence of OS-directed configuration and power
16 management (OSPM) software. This option will enlarge your
17 kernel by about 70K.
18
19 Linux ACPI provides a robust functional replacement for several
20 legacy configuration and power management interfaces, including
21 the Plug-and-Play BIOS specification (PnP BIOS), the
22 MultiProcessor Specification (MPS), and the Advanced Power
23 Management (APM) specification. If both ACPI and APM support
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -070024 are configured, ACPI is used.
Linus Torvalds1da177e2005-04-16 15:20:36 -070025
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -070026 The project home page for the Linux ACPI subsystem is here:
Rafael J. Wysockiaaf3d292013-10-10 23:25:58 +020027 <https://01.org/linux-acpi>
Linus Torvalds1da177e2005-04-16 15:20:36 -070028
29 Linux support for ACPI is based on Intel Corporation's ACPI
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -070030 Component Architecture (ACPI CA). For more information on the
31 ACPI CA, see:
32 <http://acpica.org/>
Linus Torvalds1da177e2005-04-16 15:20:36 -070033
Hanjun Guoc7f52202014-04-08 20:59:48 +080034 ACPI is an open industry specification originally co-developed by
35 Hewlett-Packard, Intel, Microsoft, Phoenix, and Toshiba. Currently,
36 it is developed by the ACPI Specification Working Group (ASWG) under
37 the UEFI Forum and any UEFI member can join the ASWG and contribute
38 to the ACPI specification.
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -070039 The specification is available at:
Linus Torvalds1da177e2005-04-16 15:20:36 -070040 <http://www.acpi.info>
Hanjun Guoc7f52202014-04-08 20:59:48 +080041 <http://www.uefi.org/acpi/specs>
Linus Torvalds1da177e2005-04-16 15:20:36 -070042
Len Brown3e11c3c2005-05-27 04:53:27 -040043if ACPI
44
Graeme Gregory8a1664b2014-07-18 18:02:52 +080045config ACPI_LEGACY_TABLES_LOOKUP
46 bool
47
Hanjun Guo46ba51e2014-07-18 18:02:54 +080048config ARCH_MIGHT_HAVE_ACPI_PDC
49 bool
50
Lorenzo Pieralisid8f4f162015-03-24 17:58:51 +000051config ACPI_GENERIC_GSI
52 bool
53
Graeme Gregory6e0a0ea2015-03-24 14:02:39 +000054config ACPI_SYSTEM_POWER_STATES_SUPPORT
55 bool
56
Suthikulpanit, Suraveed0562672015-06-10 11:08:52 -050057config ACPI_CCA_REQUIRED
58 bool
59
Lv Zheng4d946f72015-10-19 10:25:56 +080060config ACPI_DEBUGGER
61 bool "In-kernel debugger (EXPERIMENTAL)"
62 select ACPI_DEBUG
63 help
64 Enable in-kernel debugging facilities: statistics, internal
65 object dump, single step control method execution.
66 This is still under development, currently enabling this only
67 results in the compilation of the ACPICA debugger files.
68
Len Brown673d5b42007-07-28 03:33:16 -040069config ACPI_SLEEP
70 bool
Rafael J. Wysocki5d1e0722008-10-22 14:58:43 -040071 depends on SUSPEND || HIBERNATION
Graeme Gregory6e0a0ea2015-03-24 14:02:39 +000072 depends on ACPI_SYSTEM_POWER_STATES_SUPPORT
Len Brown673d5b42007-07-28 03:33:16 -040073 default y
74
Lan Tianyue2a7c3d2014-05-04 11:07:24 +080075config ACPI_PROCFS_POWER
76 bool "Deprecated power /proc/acpi directories"
Lorenzo Pieralisibbf55ae2015-05-01 11:27:01 +010077 depends on X86 && PROC_FS
Lan Tianyue2a7c3d2014-05-04 11:07:24 +080078 help
79 For backwards compatibility, this option allows
80 deprecated power /proc/acpi/ directories to exist, even when
81 they have been replaced by functions in /sys.
82 The deprecated directories (and their replacements) include:
83 /proc/acpi/battery/* (/sys/class/power_supply/*)
84 /proc/acpi/ac_adapter/* (sys/class/power_supply/*)
85 This option has no effect on /proc/acpi/ directories
86 and functions, which do not yet exist in /sys
87 This option, together with the proc directories, will be
Rafael J. Wysocki3afcb962014-05-10 13:51:36 +020088 deleted in the future.
Lan Tianyue2a7c3d2014-05-04 11:07:24 +080089
90 Say N to delete power /proc/acpi/ directories that have moved to /sys/
91
Rafael J. Wysocki18d78b62015-07-03 01:06:00 +020092config ACPI_REV_OVERRIDE_POSSIBLE
93 bool "Allow supported ACPI revision to be overriden"
94 depends on X86
95 default y
96 help
97 The platform firmware on some systems expects Linux to return "5" as
98 the supported ACPI revision which makes it expose system configuration
99 information in a special way.
100
101 For example, based on what ACPI exports as the supported revision,
102 Dell XPS 13 (2015) configures its audio device to either work in HDA
103 mode or in I2S mode, where the former is supposed to be used on Linux
104 until the latter is fully supported (in the kernel as well as in user
105 space).
106
107 This option enables a DMI-based quirk for the above Dell machine (so
108 that HDA audio is exposed by the platform firmware to the kernel) and
109 makes it possible to force the kernel to return "5" as the supported
110 ACPI revision via the "acpi_rev_override" command line switch.
111
Thomas Renninger1195a092010-07-16 13:11:31 +0200112config ACPI_EC_DEBUGFS
113 tristate "EC read/write access through /sys/kernel/debug/ec"
Thomas Renninger500de3dd2010-07-29 22:30:24 +0200114 default n
Thomas Renninger1195a092010-07-16 13:11:31 +0200115 help
116 Say N to disable Embedded Controller /sys/kernel/debug interface
117
Thomas Renninger500de3dd2010-07-29 22:30:24 +0200118 Be aware that using this interface can confuse your Embedded
119 Controller in a way that a normal reboot is not enough. You then
Andrea Gelmini25cb1bf2010-08-18 15:22:10 +0200120 have to power off your system, and remove the laptop battery for
Thomas Renninger500de3dd2010-07-29 22:30:24 +0200121 some seconds.
Thomas Renninger1195a092010-07-16 13:11:31 +0200122 An Embedded Controller typically is available on laptops and reads
123 sensor values like battery state and temperature.
Thomas Renninger500de3dd2010-07-29 22:30:24 +0200124 The kernel accesses the EC through ACPI parsed code provided by BIOS
125 tables. This option allows to access the EC directly without ACPI
126 code being involved.
Thomas Renninger1195a092010-07-16 13:11:31 +0200127 Thus this option is a debug option that helps to write ACPI drivers
128 and can be used to identify ACPI code or EC firmware bugs.
129
Linus Torvalds1da177e2005-04-16 15:20:36 -0700130config ACPI_AC
131 tristate "AC Adapter"
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -0400132 depends on X86
Zhang Rui1b3d4c32010-10-08 13:54:57 +0800133 select POWER_SUPPLY
Len Brown07fefe42005-08-25 12:22:04 -0400134 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700135 help
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700136 This driver supports the AC Adapter object, which indicates
137 whether a system is on AC or not. If you have a system that can
Len Brown07fefe42005-08-25 12:22:04 -0400138 switch between A/C and battery, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700139
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700140 To compile this driver as a module, choose M here:
141 the module will be called ac.
142
Linus Torvalds1da177e2005-04-16 15:20:36 -0700143config ACPI_BATTERY
144 tristate "Battery"
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -0400145 depends on X86
Zhang Rui1b3d4c32010-10-08 13:54:57 +0800146 select POWER_SUPPLY
Len Brown07fefe42005-08-25 12:22:04 -0400147 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700148 help
149 This driver adds support for battery information through
150 /proc/acpi/battery. If you have a mobile system with a battery,
151 say Y.
152
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700153 To compile this driver as a module, choose M here:
154 the module will be called battery.
155
Linus Torvalds1da177e2005-04-16 15:20:36 -0700156config ACPI_BUTTON
157 tristate "Button"
Dmitry Torokhovc0968f02006-11-09 00:40:13 -0500158 depends on INPUT
Len Brown07fefe42005-08-25 12:22:04 -0400159 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700160 help
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700161 This driver handles events on the power, sleep, and lid buttons.
Krzysztof Mazur7d13f942013-10-13 00:11:00 +0200162 A daemon reads events from input devices or via netlink and
163 performs user-defined actions such as shutting down the system.
164 This is necessary for software-controlled poweroff.
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700165
166 To compile this driver as a module, choose M here:
167 the module will be called button.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700168
169config ACPI_VIDEO
170 tristate "Video"
Jean Delvare9f380fc2014-03-17 15:46:44 +0100171 depends on X86 && BACKLIGHT_CLASS_DEVICE
Andreas Herrmann03e2bf22007-09-17 23:41:05 +0200172 depends on INPUT
Zhang Rui63c4ec92008-04-21 16:07:13 +0800173 select THERMAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700174 help
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700175 This driver implements the ACPI Extensions For Display Adapters
Linus Torvalds1da177e2005-04-16 15:20:36 -0700176 for integrated graphics devices on motherboard, as specified in
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700177 ACPI 2.0 Specification, Appendix B. This supports basic operations
178 such as defining the video POST device, retrieving EDID information,
179 and setting up a video output.
180
181 To compile this driver as a module, choose M here:
182 the module will be called video.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700183
184config ACPI_FAN
185 tristate "Fan"
Zhang Ruid8054742014-06-19 15:43:29 +0800186 depends on THERMAL
Len Brown07fefe42005-08-25 12:22:04 -0400187 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700188 help
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700189 This driver supports ACPI fan devices, allowing user-mode
Linus Torvalds1da177e2005-04-16 15:20:36 -0700190 applications to perform basic fan control (on, off, status).
191
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700192 To compile this driver as a module, choose M here:
193 the module will be called fan.
194
Len Brownc8f7a622006-07-09 17:22:28 -0400195config ACPI_DOCK
Shaohua Li898b0542008-09-27 11:10:28 +0800196 bool "Dock"
Len Brownc8f7a622006-07-09 17:22:28 -0400197 help
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700198 This driver supports ACPI-controlled docking stations and removable
199 drive bays such as the IBM Ultrabay and the Dell Module Bay.
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700200
Ashwin Chaugule239708a2015-08-05 09:40:25 -0400201config ACPI_CPU_FREQ_PSS
202 bool
203 select THERMAL
204
Ashwin Chaugule5f055862015-08-05 09:40:26 -0400205config ACPI_PROCESSOR_IDLE
206 bool
207 select CPU_IDLE
208
Ashwin Chaugule337aadf2015-10-02 10:01:19 -0400209config ACPI_CPPC_LIB
210 bool
211 depends on ACPI_PROCESSOR
212 depends on !ACPI_CPU_FREQ_PSS
213 select MAILBOX
214 select PCC
215 help
216 If this option is enabled, this file implements common functionality
217 to parse CPPC tables as described in the ACPI 5.1+ spec. The
218 routines implemented are meant to be used by other
219 drivers to control CPU performance using CPPC semantics.
220 If your platform does not support CPPC in firmware,
221 leave this option disabled.
222
Linus Torvalds1da177e2005-04-16 15:20:36 -0700223config ACPI_PROCESSOR
224 tristate "Processor"
Ashwin Chaugulead806ea2015-09-09 16:27:08 -0400225 depends on X86 || IA64 || ARM64
226 select ACPI_PROCESSOR_IDLE if X86 || IA64
227 select ACPI_CPU_FREQ_PSS if X86 || IA64
Len Brown07fefe42005-08-25 12:22:04 -0400228 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700229 help
Ashwin Chaugule239708a2015-08-05 09:40:25 -0400230 This driver adds support for the ACPI Processor package. It is required
231 by several flavors of cpufreq performance-state, thermal, throttling and
232 idle drivers.
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700233
234 To compile this driver as a module, choose M here:
235 the module will be called processor.
Lv Zheng4b88e332013-09-13 13:14:51 +0800236
Zhao Yakuie92b2972010-12-08 10:10:18 +0800237config ACPI_IPMI
238 tristate "IPMI"
Lv Zheng4b88e332013-09-13 13:14:51 +0800239 depends on IPMI_SI
Zhao Yakuie92b2972010-12-08 10:10:18 +0800240 default n
241 help
242 This driver enables the ACPI to access the BMC controller. And it
243 uses the IPMI request/response message to communicate with BMC
244 controller, which can be found on on the server.
245
246 To compile this driver as a module, choose M here:
247 the module will be called as acpi_ipmi.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700248
249config ACPI_HOTPLUG_CPU
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400250 bool
Kees Cookf756f282013-01-16 18:53:28 -0800251 depends on ACPI_PROCESSOR && HOTPLUG_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700252 select ACPI_CONTAINER
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400253 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700254
Shaohua Li8e0af512009-07-27 18:11:02 -0400255config ACPI_PROCESSOR_AGGREGATOR
256 tristate "Processor Aggregator"
257 depends on ACPI_PROCESSOR
Len Brownd91f79e2009-09-27 02:35:55 -0400258 depends on X86
Shaohua Li8e0af512009-07-27 18:11:02 -0400259 help
260 ACPI 4.0 defines processor Aggregator, which enables OS to perform
Jiri Slabyc4c4e2a2009-10-09 15:53:24 +0200261 specific processor configuration and control that applies to all
Shaohua Li8e0af512009-07-27 18:11:02 -0400262 processors in the platform. Currently only logical processor idling
263 is defined, which is to reduce power consumption. This driver
Jiri Slabyc4c4e2a2009-10-09 15:53:24 +0200264 supports the new device.
Shaohua Li8e0af512009-07-27 18:11:02 -0400265
Linus Torvalds1da177e2005-04-16 15:20:36 -0700266config ACPI_THERMAL
267 tristate "Thermal Zone"
268 depends on ACPI_PROCESSOR
Zhang Rui3f655ef2008-01-17 15:51:11 +0800269 select THERMAL
Len Brown07fefe42005-08-25 12:22:04 -0400270 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700271 help
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700272 This driver supports ACPI thermal zones. Most mobile and
Linus Torvalds1da177e2005-04-16 15:20:36 -0700273 some desktop systems support ACPI thermal zones. It is HIGHLY
274 recommended that this option be enabled, as your processor(s)
275 may be damaged without it.
276
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700277 To compile this driver as a module, choose M here:
278 the module will be called thermal.
279
Linus Torvalds1da177e2005-04-16 15:20:36 -0700280config ACPI_NUMA
281 bool "NUMA support"
282 depends on NUMA
Yasunori Goto762834e2006-06-23 02:03:19 -0700283 depends on (X86 || IA64)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700284 default y if IA64_GENERIC || IA64_SGI_SN2
285
Randy Dunlap7ce95732008-02-22 11:25:04 -0800286config ACPI_CUSTOM_DSDT_FILE
287 string "Custom DSDT Table file to include"
288 default ""
Linus Torvalds1da177e2005-04-16 15:20:36 -0700289 depends on !STANDALONE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700290 help
Len Brownd89e9d62008-02-06 19:28:02 -0500291 This option supports a custom DSDT by linking it into the kernel.
292 See Documentation/acpi/dsdt-override.txt
293
Uwe Zeisbergerc30fe7f2006-03-24 18:23:14 +0100294 Enter the full path name to the file which includes the AmlCode
295 declaration.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700296
Randy Dunlap7ce95732008-02-22 11:25:04 -0800297 If unsure, don't enter a file name.
298
299config ACPI_CUSTOM_DSDT
300 bool
301 default ACPI_CUSTOM_DSDT_FILE != ""
302
Thomas Renninger53aac442012-10-01 00:23:54 +0200303config ACPI_INITRD_TABLE_OVERRIDE
Thomas Renninger565d9562013-02-22 14:12:22 +0100304 bool "ACPI tables override via initrd"
305 depends on BLK_DEV_INITRD && X86
Thomas Renninger53aac442012-10-01 00:23:54 +0200306 default n
307 help
308 This option provides functionality to override arbitrary ACPI tables
309 via initrd. No functional change if no ACPI tables are passed via
310 initrd, therefore it's safe to say Y.
311 See Documentation/acpi/initrd_table_override.txt for details
312
Linus Torvalds1da177e2005-04-16 15:20:36 -0700313config ACPI_DEBUG
314 bool "Debug Statements"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700315 default n
316 help
Bjorn Helgaasa0d84a92008-11-07 16:58:05 -0700317 The ACPI subsystem can produce debug output. Saying Y enables this
318 output and increases the kernel size by around 50K.
319
320 Use the acpi.debug_layer and acpi.debug_level kernel command-line
321 parameters documented in Documentation/acpi/debug.txt and
322 Documentation/kernel-parameters.txt to control the type and
323 amount of debug output.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700324
Alex Chiang8344b562008-06-10 15:30:42 -0600325config ACPI_PCI_SLOT
Jiang Liuab1a2e02013-01-19 00:07:42 +0800326 bool "PCI slot detection driver"
Alex Chiang268a03a2009-06-17 19:03:57 -0600327 depends on SYSFS
Alex Chiang8344b562008-06-10 15:30:42 -0600328 default n
329 help
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700330 This driver creates entries in /sys/bus/pci/slots/ for all PCI
331 slots in the system. This can help correlate PCI bus addresses,
332 i.e., segment/bus/device/function tuples, with physical slots in
333 the system. If you are unsure, say N.
334
Linus Torvalds1da177e2005-04-16 15:20:36 -0700335config X86_PM_TIMER
David Rientjes6a108a12011-01-20 14:44:16 -0800336 bool "Power Management Timer Support" if EXPERT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700337 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400338 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700339 help
340 The Power Management Timer is available on all ACPI-capable,
341 in most cases even if ACPI is unusable or blacklisted.
342
Matt LaPlantec73a6682006-10-03 22:24:43 +0200343 This timing source is not affected by power management features
Linus Torvalds1da177e2005-04-16 15:20:36 -0700344 like aggressive processor idling, throttling, frequency and/or
345 voltage scaling, unlike the commonly used Time Stamp Counter
346 (TSC) timing source.
347
Andi Kleene78256b2006-02-26 04:18:37 +0100348 You should nearly always say Y here because many modern
349 systems require this timer.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700350
351config ACPI_CONTAINER
Linus Torvalds06991c22013-02-21 12:05:51 -0800352 bool "Container and Module Devices"
Paul Bolleea6a4582013-03-11 10:53:48 +0000353 default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU)
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700354 help
355 This driver supports ACPI Container and Module devices (IDs
356 ACPI0004, PNP0A05, and PNP0A06).
Keiichiro Tokunaga45b1b192005-03-02 00:00:00 -0500357
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700358 This helps support hotplug of nodes, CPUs, and memory.
359
360 To compile this driver as a module, choose M here:
361 the module will be called container.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700362
363config ACPI_HOTPLUG_MEMORY
Rafael J. Wysocki0a347642013-03-03 23:18:03 +0100364 bool "Memory Hotplug"
Yasunori Gotobc02af92006-06-27 02:53:30 -0700365 depends on MEMORY_HOTPLUG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700366 help
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700367 This driver supports ACPI memory hotplug. The driver
368 fields notifications on ACPI memory devices (PNP0C80),
369 which represent memory ranges that may be onlined or
370 offlined during runtime.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700371
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700372 If your hardware and firmware do not support adding or
373 removing memory devices at runtime, you need not enable
374 this driver.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700375
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700376 To compile this driver as a module, choose M here:
377 the module will be called acpi_memhotplug.
Rich Townsend3f86b832006-07-01 11:36:54 -0400378
Jiang Liuc1836192015-02-05 13:44:49 +0800379config ACPI_HOTPLUG_IOAPIC
380 bool
381 depends on PCI
382 depends on X86_IO_APIC
383 default y
384
Rich Townsend3f86b832006-07-01 11:36:54 -0400385config ACPI_SBS
Alexey Starikovskiy94f6c082007-09-26 19:43:48 +0400386 tristate "Smart Battery System"
Vladimir Lebedevb4150fc2007-03-19 17:45:50 +0300387 depends on X86
Zhang Rui1b3d4c32010-10-08 13:54:57 +0800388 select POWER_SUPPLY
Rich Townsend3f86b832006-07-01 11:36:54 -0400389 help
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700390 This driver supports the Smart Battery System, another
Alexey Starikovskiy94f6c082007-09-26 19:43:48 +0400391 type of access to battery information, found on some laptops.
Rich Townsend3f86b832006-07-01 11:36:54 -0400392
Bjorn Helgaas1c48aa32009-02-19 14:45:47 -0700393 To compile this driver as a module, choose M here:
394 the modules will be called sbs and sbshc.
395
Huang Ying801eab82010-05-18 14:35:17 +0800396config ACPI_HED
397 tristate "Hardware Error Device"
398 help
399 This driver supports the Hardware Error Device (PNP0C33),
400 which is used to report some hardware errors notified via
401 SCI, mainly the corrected errors.
402
Thomas Renninger526b4af2011-05-26 12:26:24 +0200403config ACPI_CUSTOM_METHOD
404 tristate "Allow ACPI methods to be inserted/replaced at run time"
405 depends on DEBUG_FS
406 default n
407 help
Justin P. Mattockbd1b2a52012-01-03 08:49:48 -0800408 This debug facility allows ACPI AML methods to be inserted and/or
Thomas Renninger526b4af2011-05-26 12:26:24 +0200409 replaced without rebooting the system. For details refer to:
410 Documentation/acpi/method-customizing.txt.
411
412 NOTE: This option is security sensitive, because it allows arbitrary
413 kernel memory to be written to by root (uid=0) users, allowing them
414 to bypass certain security measures (e.g. if root is not allowed to
415 load additional kernel modules after boot, this feature may be used
416 to override that restriction).
417
Matthew Garrettd1ff4b12012-01-31 13:19:20 -0500418config ACPI_BGRT
Josh Triplett2223af32012-09-28 17:57:05 -0700419 bool "Boottime Graphics Resource Table support"
Tony Lucke66cd532013-04-03 13:17:20 +0200420 depends on EFI && X86
Matthew Garrettd1ff4b12012-01-31 13:19:20 -0500421 help
422 This driver adds support for exposing the ACPI Boottime Graphics
423 Resource Table, which allows the operating system to obtain
424 data from the firmware boot splash. It will appear under
425 /sys/firmware/acpi/bgrt/ .
426
Al Stoneaf1ae782014-01-17 11:51:30 -0700427config ACPI_REDUCED_HARDWARE_ONLY
428 bool "Hardware-reduced ACPI support only" if EXPERT
429 def_bool n
Al Stoneaf1ae782014-01-17 11:51:30 -0700430 help
Hanjun Guo99a33ff2014-11-14 17:44:07 +0800431 This config item changes the way the ACPI code is built. When this
432 option is selected, the kernel will use a specialized version of
433 ACPICA that ONLY supports the ACPI "reduced hardware" mode. The
434 resulting kernel will be smaller but it will also be restricted to
435 running in ACPI reduced hardware mode ONLY.
Al Stoneaf1ae782014-01-17 11:51:30 -0700436
Hanjun Guo99a33ff2014-11-14 17:44:07 +0800437 If you are unsure what to do, do not enable this option.
Al Stoneaf1ae782014-01-17 11:51:30 -0700438
Dan Williamsb94d5232015-05-19 22:54:31 -0400439config ACPI_NFIT
440 tristate "ACPI NVDIMM Firmware Interface Table (NFIT)"
441 depends on PHYS_ADDR_T_64BIT
442 depends on BLK_DEV
Ross Zwisler67a3e8f2015-08-27 13:14:20 -0600443 depends on ARCH_HAS_MMIO_FLUSH
Dan Williamsb94d5232015-05-19 22:54:31 -0400444 select LIBNVDIMM
445 help
446 Infrastructure to probe ACPI 6 compliant platforms for
447 NVDIMMs (NFIT) and register a libnvdimm device tree. In
448 addition to storage devices this also enables libnvdimm to pass
449 ACPI._DSM messages for platform/dimm configuration.
450
451 To compile this driver as a module, choose M here:
452 the module will be called nfit.
453
Dan Williams62232e452015-06-08 14:27:06 -0400454config ACPI_NFIT_DEBUG
455 bool "NFIT DSM debug"
456 depends on ACPI_NFIT
457 depends on DYNAMIC_DEBUG
458 default n
459 help
460 Enabling this option causes the nfit driver to dump the
461 input and output buffers of _DSM operations on the ACPI0012
462 device and its children. This can be very verbose, so leave
463 it disabled unless you are debugging a hardware / firmware
464 issue.
465
Huang Yinga643ce22010-05-18 14:35:12 +0800466source "drivers/acpi/apei/Kconfig"
467
Chen, Gong4b3db702013-10-21 14:29:25 -0700468config ACPI_EXTLOG
469 tristate "Extended Error Log support"
Luck, Tony9ebddac2013-11-08 14:03:33 -0800470 depends on X86_MCE && X86_LOCAL_APIC
Luck, Tony7ea6c6c2013-10-28 14:06:55 -0700471 select UEFI_CPER
Chen, Gong2dfb7d52014-06-17 22:33:07 -0400472 select RAS
Chen, Gong4b3db702013-10-21 14:29:25 -0700473 default n
474 help
475 Certain usages such as Predictive Failure Analysis (PFA) require
476 more information about the error than what can be described in
477 processor machine check banks. Most server processors log
478 additional information about the error in processor uncore
479 registers. Since the addresses and layout of these registers vary
480 widely from one processor to another, system software cannot
481 readily make use of them. To complicate matters further, some of
482 the additional error information cannot be constructed without
483 detailed knowledge about platform topology.
484
485 Enhanced MCA Logging allows firmware to provide additional error
486 information to system software, synchronous with MCE or CMCI. This
Chen, Gong2dfb7d52014-06-17 22:33:07 -0400487 driver adds support for that functionality with corresponding
488 tracepoint which carries that information to userspace.
Chen, Gong4b3db702013-10-21 14:29:25 -0700489
Aaron Lub1eea852014-11-24 17:21:54 +0800490menuconfig PMIC_OPREGION
491 bool "PMIC (Power Management Integrated Circuit) operation region support"
492 help
493 Select this option to enable support for ACPI operation
494 region of the PMIC chip. The operation region can be used
495 to control power rails and sensor reading/writing on the
496 PMIC chip.
497
498if PMIC_OPREGION
499config CRC_PMIC_OPREGION
500 bool "ACPI operation region support for CrystalCove PMIC"
501 depends on INTEL_SOC_PMIC
502 help
503 This config adds ACPI operation region support for CrystalCove PMIC.
504
Aaron Lud8139f62014-11-24 17:24:47 +0800505config XPOWER_PMIC_OPREGION
506 bool "ACPI operation region support for XPower AXP288 PMIC"
507 depends on AXP288_ADC = y
508 help
509 This config adds ACPI operation region support for XPower AXP288 PMIC.
510
Aaron Lub1eea852014-11-24 17:21:54 +0800511endif
512
Linus Torvalds1da177e2005-04-16 15:20:36 -0700513endif # ACPI