blob: ecd87d7aa9f618e9132fc25cb0e9a217f16c6aab [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
6 bool "ACPI Support (Advanced Configuration and Power Interface) Support"
Len Browndb5034222007-02-02 21:05:04 -05007 depends on !X86_NUMAQ
Linus Torvalds1da177e2005-04-16 15:20:36 -07008 depends on !X86_VISWS
9 depends on !IA64_HP_SIM
10 depends on IA64 || X86
Adrian Bunk13001242006-03-28 17:04:00 -050011 depends on PCI
Andrew Morton6796a122006-12-19 12:56:13 -080012 depends on PM
Len Brown243b66e2007-02-15 22:34:36 -050013 select PNP
Linus Torvalds1da177e2005-04-16 15:20:36 -070014 default y
15 ---help---
16 Advanced Configuration and Power Interface (ACPI) support for
17 Linux requires an ACPI compliant platform (hardware/firmware),
18 and assumes the presence of OS-directed configuration and power
19 management (OSPM) software. This option will enlarge your
20 kernel by about 70K.
21
22 Linux ACPI provides a robust functional replacement for several
23 legacy configuration and power management interfaces, including
24 the Plug-and-Play BIOS specification (PnP BIOS), the
25 MultiProcessor Specification (MPS), and the Advanced Power
26 Management (APM) specification. If both ACPI and APM support
27 are configured, whichever is loaded first shall be used.
28
29 The ACPI SourceForge project contains the latest source code,
30 documentation, tools, mailing list subscription, and other
31 information. This project is available at:
32 <http://sourceforge.net/projects/acpi>
33
34 Linux support for ACPI is based on Intel Corporation's ACPI
35 Component Architecture (ACPI CA). For more information see:
36 <http://developer.intel.com/technology/iapc/acpi>
37
38 ACPI is an open industry specification co-developed by Compaq,
39 Intel, Microsoft, Phoenix, and Toshiba. The specification is
40 available at:
41 <http://www.acpi.info>
42
Len Brown3e11c3c2005-05-27 04:53:27 -040043if ACPI
44
Len Brown673d5b42007-07-28 03:33:16 -040045config ACPI_SLEEP
46 bool
47 depends on PM_SLEEP
48 default y
49
Zhang Ruib981c592007-01-29 11:02:30 +080050config ACPI_PROCFS
Len Brownfb804712007-07-24 01:50:46 -040051 bool "Deprecated /proc/acpi files"
52 depends on PROC_FS
Zhang Ruib981c592007-01-29 11:02:30 +080053 ---help---
Len Brownfb804712007-07-24 01:50:46 -040054 For backwards compatibility, this option allows
Rolf Eike Beer405bbe92007-10-20 03:10:57 +020055 deprecated /proc/acpi/ files to exist, even when
Len Brownfb804712007-07-24 01:50:46 -040056 they have been replaced by functions in /sys.
57 The deprecated files (and their replacements) include:
58
Len Brown43532c82007-07-24 02:16:50 -040059 /proc/acpi/sleep (/sys/power/state)
Len Brownfb804712007-07-24 01:50:46 -040060 /proc/acpi/info (/sys/modules/acpi/parameters/acpica_version)
61 /proc/acpi/dsdt (/sys/firmware/acpi/tables/DSDT)
62 /proc/acpi/fadt (/sys/firmware/acpi/tables/FACP)
63 /proc/acpi/debug_layer (/sys/module/acpi/parameters/debug_layer)
64 /proc/acpi/debug_level (/sys/module/acpi/parameters/debug_level)
65
66 This option has no effect on /proc/acpi/ files
67 and functions which do not yet exist in /sys.
68
69 Say N to delete /proc/acpi/ files that have moved to /sys/
Zhang Ruib981c592007-01-29 11:02:30 +080070
Len Brown14e04fb2007-08-23 15:20:26 -040071config ACPI_PROC_EVENT
72 bool "Deprecated /proc/acpi/event support"
73 depends on PROC_FS
Hugh Dickins721ebe02007-08-27 16:04:39 +010074 default y
Len Brown14e04fb2007-08-23 15:20:26 -040075 ---help---
76 A user-space daemon, acpi, typically read /proc/acpi/event
77 and handled all ACPI sub-system generated events.
78
79 These events are now delivered to user-space via
80 either the input layer, or as netlink events.
81
Hugh Dickins721ebe02007-08-27 16:04:39 +010082 This build option enables the old code for legacy
Len Brown14e04fb2007-08-23 15:20:26 -040083 user-space implementation. After some time, this will
84 be moved under CONFIG_ACPI_PROCFS, and then deleted.
85
Hugh Dickins721ebe02007-08-27 16:04:39 +010086 Say Y here to retain the old behaviour. Say N if your
87 user-space is newer than kernel 2.6.23 (September 2007).
88
Linus Torvalds1da177e2005-04-16 15:20:36 -070089config ACPI_AC
90 tristate "AC Adapter"
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -040091 depends on X86
92 select POWER_SUPPLY
Len Brown07fefe42005-08-25 12:22:04 -040093 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -070094 help
95 This driver adds support for the AC Adapter object, which indicates
Len Brown07fefe42005-08-25 12:22:04 -040096 whether a system is on AC, or not. If you have a system that can
97 switch between A/C and battery, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -070098
99config ACPI_BATTERY
100 tristate "Battery"
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -0400101 depends on X86
102 select POWER_SUPPLY
Len Brown07fefe42005-08-25 12:22:04 -0400103 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700104 help
105 This driver adds support for battery information through
106 /proc/acpi/battery. If you have a mobile system with a battery,
107 say Y.
108
109config ACPI_BUTTON
110 tristate "Button"
Dmitry Torokhovc0968f02006-11-09 00:40:13 -0500111 depends on INPUT
Len Brown07fefe42005-08-25 12:22:04 -0400112 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700113 help
Len Brown07fefe42005-08-25 12:22:04 -0400114 This driver handles events on the power, sleep and lid buttons.
115 A daemon reads /proc/acpi/event and perform user-defined actions
116 such as shutting down the system. This is necessary for
117 software controlled poweroff.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700118
119config ACPI_VIDEO
120 tristate "Video"
Luming Yu23b0f012007-05-09 21:07:05 +0800121 depends on X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL
Andreas Herrmann03e2bf22007-09-17 23:41:05 +0200122 depends on INPUT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700123 help
124 This driver implement the ACPI Extensions For Display Adapters
125 for integrated graphics devices on motherboard, as specified in
126 ACPI 2.0 Specification, Appendix B, allowing to perform some basic
127 control like defining the video POST device, retrieving EDID information
128 or to setup a video output, etc.
129 Note that this is an ref. implementation only. It may or may not work
130 for your integrated video device.
131
132config ACPI_FAN
133 tristate "Fan"
Len Brown07fefe42005-08-25 12:22:04 -0400134 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700135 help
136 This driver adds support for ACPI fan devices, allowing user-mode
137 applications to perform basic fan control (on, off, status).
138
Len Brownc8f7a622006-07-09 17:22:28 -0400139config ACPI_DOCK
140 tristate "Dock"
Len Brown8d7bff62006-07-09 22:09:57 -0400141 depends on EXPERIMENTAL
Len Brownc8f7a622006-07-09 17:22:28 -0400142 help
143 This driver adds support for ACPI controlled docking stations
144
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700145config ACPI_BAY
Len Brown0ed1e382007-02-02 22:39:16 -0500146 tristate "Removable Drive Bay (EXPERIMENTAL)"
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700147 depends on EXPERIMENTAL
Kristen Carlson Accardib1a316f2007-02-28 20:13:17 -0800148 depends on ACPI_DOCK
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700149 help
150 This driver adds support for ACPI controlled removable drive
151 bays such as the IBM ultrabay or the Dell Module Bay.
152
Linus Torvalds1da177e2005-04-16 15:20:36 -0700153config ACPI_PROCESSOR
154 tristate "Processor"
Len Brown07fefe42005-08-25 12:22:04 -0400155 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700156 help
157 This driver installs ACPI as the idle handler for Linux, and uses
158 ACPI C2 and C3 processor states to save power, on systems that
Len Brown07fefe42005-08-25 12:22:04 -0400159 support it. It is required by several flavors of cpufreq
160 Performance-state drivers.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700161
162config ACPI_HOTPLUG_CPU
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400163 bool
164 depends on ACPI_PROCESSOR && HOTPLUG_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700165 select ACPI_CONTAINER
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400166 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700167
168config ACPI_THERMAL
169 tristate "Thermal Zone"
170 depends on ACPI_PROCESSOR
Len Brown07fefe42005-08-25 12:22:04 -0400171 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700172 help
173 This driver adds support for ACPI thermal zones. Most mobile and
174 some desktop systems support ACPI thermal zones. It is HIGHLY
175 recommended that this option be enabled, as your processor(s)
176 may be damaged without it.
177
178config ACPI_NUMA
179 bool "NUMA support"
180 depends on NUMA
Yasunori Goto762834e2006-06-23 02:03:19 -0700181 depends on (X86 || IA64)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700182 default y if IA64_GENERIC || IA64_SGI_SN2
183
184config ACPI_ASUS
185 tristate "ASUS/Medion Laptop Extras"
186 depends on X86
Holger Macht2039a6e2006-10-20 14:30:29 -0700187 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700188 ---help---
189 This driver provides support for extra features of ACPI-compatible
190 ASUS laptops. As some of Medion laptops are made by ASUS, it may also
191 support some Medion laptops (such as 9675 for example). It makes all
192 the extra buttons generate standard ACPI events that go through
193 /proc/acpi/events, and (on some models) adds support for changing the
194 display brightness and output, switching the LCD backlight on and off,
195 and most importantly, allows you to blink those fancy LEDs intended
196 for reporting mail and wireless status.
197
198 Note: display switching code is currently considered EXPERIMENTAL,
199 toying with these values may even lock your machine.
Corentin Chary85091b72007-01-26 14:04:30 +0100200
Linus Torvalds1da177e2005-04-16 15:20:36 -0700201 All settings are changed via /proc/acpi/asus directory entries. Owner
202 and group for these entries can be set with asus_uid and asus_gid
203 parameters.
Corentin Chary85091b72007-01-26 14:04:30 +0100204
Linus Torvalds1da177e2005-04-16 15:20:36 -0700205 More information and a userspace daemon for handling the extra buttons
206 at <http://sourceforge.net/projects/acpi4asus/>.
Corentin Chary85091b72007-01-26 14:04:30 +0100207
Linus Torvalds1da177e2005-04-16 15:20:36 -0700208 If you have an ACPI-compatible ASUS laptop, say Y or M here. This
209 driver is still under development, so if your laptop is unsupported or
210 something works not quite as expected, please use the mailing list
Corentin Chary85091b72007-01-26 14:04:30 +0100211 available on the above page (acpi4asus-user@lists.sourceforge.net).
212
213 NOTE: This driver is deprecated and will probably be removed soon,
214 use asus-laptop instead.
215
Linus Torvalds1da177e2005-04-16 15:20:36 -0700216config ACPI_TOSHIBA
217 tristate "Toshiba Laptop Extras"
218 depends on X86
Holger Machtc9263552006-10-20 14:30:29 -0700219 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700220 ---help---
221 This driver adds support for access to certain system settings
222 on "legacy free" Toshiba laptops. These laptops can be recognized by
223 their lack of a BIOS setup menu and APM support.
224
225 On these machines, all system configuration is handled through the
226 ACPI. This driver is required for access to controls not covered
227 by the general ACPI drivers, such as LCD brightness, video output,
228 etc.
229
230 This driver differs from the non-ACPI Toshiba laptop driver (located
231 under "Processor type and features") in several aspects.
232 Configuration is accessed by reading and writing text files in the
233 /proc tree instead of by program interface to /dev. Furthermore, no
234 power management functions are exposed, as those are handled by the
235 general ACPI drivers.
236
237 More information about this driver is available at
238 <http://memebeam.org/toys/ToshibaAcpiDriver>.
239
240 If you have a legacy free Toshiba laptop (such as the Libretto L1
241 series), say Y.
242
243config ACPI_CUSTOM_DSDT
244 bool "Include Custom DSDT"
245 depends on !STANDALONE
246 default n
247 help
Matt LaPlantec73a6682006-10-03 22:24:43 +0200248 This option is to load a custom ACPI DSDT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700249 If you don't know what that is, say N.
250
251config ACPI_CUSTOM_DSDT_FILE
252 string "Custom DSDT Table file to include"
253 depends on ACPI_CUSTOM_DSDT
254 default ""
255 help
Uwe Zeisbergerc30fe7f2006-03-24 18:23:14 +0100256 Enter the full path name to the file which includes the AmlCode
257 declaration.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700258
259config ACPI_BLACKLIST_YEAR
Andi Kleen2eb1bdb2006-02-26 04:18:43 +0100260 int "Disable ACPI for systems before Jan 1st this year" if X86_32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700261 default 0
262 help
263 enter a 4-digit year, eg. 2001 to disable ACPI by default
264 on platforms with DMI BIOS date before January 1st that year.
265 "acpi=force" can be used to override this mechanism.
266
267 Enter 0 to disable this mechanism and allow ACPI to
268 run by default no matter what the year. (default)
269
270config ACPI_DEBUG
271 bool "Debug Statements"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700272 default n
273 help
274 The ACPI driver can optionally report errors with a great deal
275 of verbosity. Saying Y enables these statements. This will increase
276 your kernel size by around 50K.
277
Thomas Renninger798d91032007-05-31 17:20:39 +0200278config ACPI_DEBUG_FUNC_TRACE
279 bool "Additionally enable ACPI function tracing"
280 default n
281 depends on ACPI_DEBUG
282 help
283 ACPI Debug Statements slow down ACPI processing. Function trace
284 is about half of the penalty and is rarely useful.
285
Linus Torvalds1da177e2005-04-16 15:20:36 -0700286config ACPI_EC
287 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700288 default y
289 help
290 This driver is required on some systems for the proper operation of
291 the battery and thermal drivers. If you are compiling for a
292 mobile system, say Y.
293
294config ACPI_POWER
295 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700296 default y
297
Linus Torvalds1da177e2005-04-16 15:20:36 -0700298config ACPI_SYSTEM
299 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700300 default y
301 help
302 This driver will enable your system to shut down using ACPI, and
303 dump your ACPI DSDT table using /proc/acpi/dsdt.
304
Linus Torvalds1da177e2005-04-16 15:20:36 -0700305config X86_PM_TIMER
Andi Kleene78256b2006-02-26 04:18:37 +0100306 bool "Power Management Timer Support" if EMBEDDED
Linus Torvalds1da177e2005-04-16 15:20:36 -0700307 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400308 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700309 help
310 The Power Management Timer is available on all ACPI-capable,
311 in most cases even if ACPI is unusable or blacklisted.
312
Matt LaPlantec73a6682006-10-03 22:24:43 +0200313 This timing source is not affected by power management features
Linus Torvalds1da177e2005-04-16 15:20:36 -0700314 like aggressive processor idling, throttling, frequency and/or
315 voltage scaling, unlike the commonly used Time Stamp Counter
316 (TSC) timing source.
317
Andi Kleene78256b2006-02-26 04:18:37 +0100318 You should nearly always say Y here because many modern
319 systems require this timer.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700320
321config ACPI_CONTAINER
322 tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
323 depends on EXPERIMENTAL
324 default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
325 ---help---
Keiichiro Tokunaga45b1b192005-03-02 00:00:00 -0500326 This allows _physical_ insertion and removal of CPUs and memory.
327 This can be useful, for example, on NUMA machines that support
328 ACPI based physical hotplug of nodes, or non-NUMA machines that
329 support physical cpu/memory hot-plug.
330
331 If one selects "m", this driver can be loaded with
332 "modprobe acpi_container".
Linus Torvalds1da177e2005-04-16 15:20:36 -0700333
334config ACPI_HOTPLUG_MEMORY
335 tristate "Memory Hotplug"
Yasunori Gotobc02af92006-06-27 02:53:30 -0700336 depends on MEMORY_HOTPLUG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700337 default n
338 help
339 This driver adds supports for ACPI Memory Hotplug. This driver
340 provides support for fielding notifications on ACPI memory
341 devices (PNP0C80) which represent memory ranges that may be
342 onlined or offlined during runtime.
343
344 Enabling this driver assumes that your platform hardware
345 and firmware have support for hot-plugging physical memory. If
346 your system does not support physically adding or ripping out
Matt LaPlantec73a6682006-10-03 22:24:43 +0200347 memory DIMMs at some platform defined granularity (individually
Linus Torvalds1da177e2005-04-16 15:20:36 -0700348 or as a bank) at runtime, then you need not enable this driver.
349
350 If one selects "m," this driver can be loaded using the following
351 command:
352 $>modprobe acpi_memhotplug
Rich Townsend3f86b832006-07-01 11:36:54 -0400353
354config ACPI_SBS
Alexey Starikovskiy94f6c082007-09-26 19:43:48 +0400355 tristate "Smart Battery System"
Vladimir Lebedevb4150fc2007-03-19 17:45:50 +0300356 depends on X86
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -0400357 select POWER_SUPPLY
Rich Townsend3f86b832006-07-01 11:36:54 -0400358 help
Alexey Starikovskiy94f6c082007-09-26 19:43:48 +0400359 This driver adds support for the Smart Battery System, another
360 type of access to battery information, found on some laptops.
Rich Townsend3f86b832006-07-01 11:36:54 -0400361
Linus Torvalds1da177e2005-04-16 15:20:36 -0700362endif # ACPI