blob: e942ffe8b57ee4c9a13a447bf205e3939815dfcc [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# ACPI Configuration
3#
4
5menu "ACPI (Advanced Configuration and Power Interface) Support"
Len Browndb5034222007-02-02 21:05:04 -05006 depends on !X86_NUMAQ
Linus Torvalds1da177e2005-04-16 15:20:36 -07007 depends on !X86_VISWS
8 depends on !IA64_HP_SIM
9 depends on IA64 || X86
10
11config ACPI
12 bool "ACPI Support"
13 depends on IA64 || X86
Adrian Bunk13001242006-03-28 17:04:00 -050014 depends on PCI
Andrew Morton6796a122006-12-19 12:56:13 -080015 depends on PM
Len Brown243b66e2007-02-15 22:34:36 -050016 select PNP
Linus Torvalds1da177e2005-04-16 15:20:36 -070017 default y
18 ---help---
19 Advanced Configuration and Power Interface (ACPI) support for
20 Linux requires an ACPI compliant platform (hardware/firmware),
21 and assumes the presence of OS-directed configuration and power
22 management (OSPM) software. This option will enlarge your
23 kernel by about 70K.
24
25 Linux ACPI provides a robust functional replacement for several
26 legacy configuration and power management interfaces, including
27 the Plug-and-Play BIOS specification (PnP BIOS), the
28 MultiProcessor Specification (MPS), and the Advanced Power
29 Management (APM) specification. If both ACPI and APM support
30 are configured, whichever is loaded first shall be used.
31
32 The ACPI SourceForge project contains the latest source code,
33 documentation, tools, mailing list subscription, and other
34 information. This project is available at:
35 <http://sourceforge.net/projects/acpi>
36
37 Linux support for ACPI is based on Intel Corporation's ACPI
38 Component Architecture (ACPI CA). For more information see:
39 <http://developer.intel.com/technology/iapc/acpi>
40
41 ACPI is an open industry specification co-developed by Compaq,
42 Intel, Microsoft, Phoenix, and Toshiba. The specification is
43 available at:
44 <http://www.acpi.info>
45
Len Brown3e11c3c2005-05-27 04:53:27 -040046if ACPI
47
Linus Torvalds1da177e2005-04-16 15:20:36 -070048config ACPI_SLEEP
Len Brownbfea6c22005-08-25 12:15:11 -040049 bool "Sleep States"
Li Shaohua5a72e042005-06-25 14:55:06 -070050 depends on X86 && (!SMP || SUSPEND_SMP)
Len Brownbfea6c22005-08-25 12:15:11 -040051 depends on PM
Linus Torvalds1da177e2005-04-16 15:20:36 -070052 default y
53 ---help---
54 This option adds support for ACPI suspend states.
55
56 With this option, you will be able to put the system "to sleep".
57 Sleep states are low power states for the system and devices. All
58 of the system operating state is saved to either memory or disk
59 (depending on the state), to allow the system to resume operation
60 quickly at your request.
61
62 Although this option sounds really nifty, barely any of the device
63 drivers have been converted to the new driver model and hence few
64 have proper power management support.
65
66 This option is not recommended for anyone except those doing driver
67 power management development.
68
69config ACPI_SLEEP_PROC_FS
70 bool
71 depends on ACPI_SLEEP && PROC_FS
72 default y
73
Len Brownebb6e1a2005-04-14 23:12:56 -040074config ACPI_SLEEP_PROC_SLEEP
75 bool "/proc/acpi/sleep (deprecated)"
76 depends on ACPI_SLEEP_PROC_FS
77 default n
78 ---help---
79 Create /proc/acpi/sleep
80 Deprecated by /sys/power/state
81
Zhang Ruib981c592007-01-29 11:02:30 +080082config ACPI_PROCFS
83 bool "Procfs interface (deprecated)"
84 depends on ACPI
85 default y
86 ---help---
87 Procfs interface for ACPI is made optional for back-compatible.
88 As the same functions are duplicated in sysfs interface
89 and this proc interface will be removed some time later,
90 it's marked as deprecated.
Zhang Rui219c3c82007-01-29 11:02:38 +080091 ( /proc/acpi/debug_layer && debug_level are deprecated by
Zhang Rui5bb730f2007-01-29 11:02:42 +080092 /sys/module/acpi/parameters/debug_layer && debug_level.
93 /proc/acpi/info is deprecated by
94 /sys/module/acpi/parameters/acpica_version )
Zhang Ruib981c592007-01-29 11:02:30 +080095
Linus Torvalds1da177e2005-04-16 15:20:36 -070096config ACPI_AC
97 tristate "AC Adapter"
98 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -040099 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700100 help
101 This driver adds support for the AC Adapter object, which indicates
Len Brown07fefe42005-08-25 12:22:04 -0400102 whether a system is on AC, or not. If you have a system that can
103 switch between A/C and battery, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700104
105config ACPI_BATTERY
106 tristate "Battery"
107 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400108 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700109 help
110 This driver adds support for battery information through
111 /proc/acpi/battery. If you have a mobile system with a battery,
112 say Y.
113
114config ACPI_BUTTON
115 tristate "Button"
Dmitry Torokhovc0968f02006-11-09 00:40:13 -0500116 depends on INPUT
Len Brown07fefe42005-08-25 12:22:04 -0400117 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700118 help
Len Brown07fefe42005-08-25 12:22:04 -0400119 This driver handles events on the power, sleep and lid buttons.
120 A daemon reads /proc/acpi/event and perform user-defined actions
121 such as shutting down the system. This is necessary for
122 software controlled poweroff.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700123
124config ACPI_VIDEO
125 tristate "Video"
Yu Luming2f3d0002006-11-11 02:40:34 +0800126 depends on X86 && BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700127 help
128 This driver implement the ACPI Extensions For Display Adapters
129 for integrated graphics devices on motherboard, as specified in
130 ACPI 2.0 Specification, Appendix B, allowing to perform some basic
131 control like defining the video POST device, retrieving EDID information
132 or to setup a video output, etc.
133 Note that this is an ref. implementation only. It may or may not work
134 for your integrated video device.
135
136config ACPI_FAN
137 tristate "Fan"
Len Brown07fefe42005-08-25 12:22:04 -0400138 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700139 help
140 This driver adds support for ACPI fan devices, allowing user-mode
141 applications to perform basic fan control (on, off, status).
142
Len Brownc8f7a622006-07-09 17:22:28 -0400143config ACPI_DOCK
144 tristate "Dock"
Len Brown8d7bff62006-07-09 22:09:57 -0400145 depends on EXPERIMENTAL
Len Brownc8f7a622006-07-09 17:22:28 -0400146 help
147 This driver adds support for ACPI controlled docking stations
148
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700149config ACPI_BAY
Len Brown0ed1e382007-02-02 22:39:16 -0500150 tristate "Removable Drive Bay (EXPERIMENTAL)"
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700151 depends on EXPERIMENTAL
152 help
153 This driver adds support for ACPI controlled removable drive
154 bays such as the IBM ultrabay or the Dell Module Bay.
155
Linus Torvalds1da177e2005-04-16 15:20:36 -0700156config ACPI_PROCESSOR
157 tristate "Processor"
Len Brown07fefe42005-08-25 12:22:04 -0400158 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700159 help
160 This driver installs ACPI as the idle handler for Linux, and uses
161 ACPI C2 and C3 processor states to save power, on systems that
Len Brown07fefe42005-08-25 12:22:04 -0400162 support it. It is required by several flavors of cpufreq
163 Performance-state drivers.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700164
165config ACPI_HOTPLUG_CPU
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400166 bool
167 depends on ACPI_PROCESSOR && HOTPLUG_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700168 select ACPI_CONTAINER
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400169 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700170
171config ACPI_THERMAL
172 tristate "Thermal Zone"
173 depends on ACPI_PROCESSOR
Len Brown07fefe42005-08-25 12:22:04 -0400174 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700175 help
176 This driver adds support for ACPI thermal zones. Most mobile and
177 some desktop systems support ACPI thermal zones. It is HIGHLY
178 recommended that this option be enabled, as your processor(s)
179 may be damaged without it.
180
181config ACPI_NUMA
182 bool "NUMA support"
183 depends on NUMA
Yasunori Goto762834e2006-06-23 02:03:19 -0700184 depends on (X86 || IA64)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700185 default y if IA64_GENERIC || IA64_SGI_SN2
186
187config ACPI_ASUS
188 tristate "ASUS/Medion Laptop Extras"
189 depends on X86
Holger Macht2039a6e2006-10-20 14:30:29 -0700190 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700191 ---help---
192 This driver provides support for extra features of ACPI-compatible
193 ASUS laptops. As some of Medion laptops are made by ASUS, it may also
194 support some Medion laptops (such as 9675 for example). It makes all
195 the extra buttons generate standard ACPI events that go through
196 /proc/acpi/events, and (on some models) adds support for changing the
197 display brightness and output, switching the LCD backlight on and off,
198 and most importantly, allows you to blink those fancy LEDs intended
199 for reporting mail and wireless status.
200
201 Note: display switching code is currently considered EXPERIMENTAL,
202 toying with these values may even lock your machine.
Corentin Chary85091b72007-01-26 14:04:30 +0100203
Linus Torvalds1da177e2005-04-16 15:20:36 -0700204 All settings are changed via /proc/acpi/asus directory entries. Owner
205 and group for these entries can be set with asus_uid and asus_gid
206 parameters.
Corentin Chary85091b72007-01-26 14:04:30 +0100207
Linus Torvalds1da177e2005-04-16 15:20:36 -0700208 More information and a userspace daemon for handling the extra buttons
209 at <http://sourceforge.net/projects/acpi4asus/>.
Corentin Chary85091b72007-01-26 14:04:30 +0100210
Linus Torvalds1da177e2005-04-16 15:20:36 -0700211 If you have an ACPI-compatible ASUS laptop, say Y or M here. This
212 driver is still under development, so if your laptop is unsupported or
213 something works not quite as expected, please use the mailing list
Corentin Chary85091b72007-01-26 14:04:30 +0100214 available on the above page (acpi4asus-user@lists.sourceforge.net).
215
216 NOTE: This driver is deprecated and will probably be removed soon,
217 use asus-laptop instead.
218
Linus Torvalds1da177e2005-04-16 15:20:36 -0700219config ACPI_IBM
220 tristate "IBM ThinkPad Laptop Extras"
221 depends on X86
Holger Macht8acb0252006-10-20 14:30:28 -0700222 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700223 ---help---
224 This is a Linux ACPI driver for the IBM ThinkPad laptops. It adds
225 support for Fn-Fx key combinations, Bluetooth control, video
226 output switching, ThinkLight control, UltraBay eject and more.
227 For more information about this driver see <file:Documentation/ibm-acpi.txt>
228 and <http://ibm-acpi.sf.net/> .
229
230 If you have an IBM ThinkPad laptop, say Y or M here.
231
Kristen Accardi63e5f242006-02-23 17:56:06 -0800232config ACPI_IBM_DOCK
233 bool "Legacy Docking Station Support"
234 depends on ACPI_IBM
Len Brown8d7bff62006-07-09 22:09:57 -0400235 depends on ACPI_DOCK=n
Kristen Accardi63e5f242006-02-23 17:56:06 -0800236 default n
237 ---help---
238 Allows the ibm_acpi driver to handle docking station events.
239 This support is obsoleted by CONFIG_HOTPLUG_PCI_ACPI. It will
240 allow locking and removing the laptop from the docking station,
241 but will not properly connect PCI devices.
242
243 If you are not sure, say N here.
244
Linus Torvalds1da177e2005-04-16 15:20:36 -0700245config ACPI_TOSHIBA
246 tristate "Toshiba Laptop Extras"
247 depends on X86
Holger Machtc9263552006-10-20 14:30:29 -0700248 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700249 ---help---
250 This driver adds support for access to certain system settings
251 on "legacy free" Toshiba laptops. These laptops can be recognized by
252 their lack of a BIOS setup menu and APM support.
253
254 On these machines, all system configuration is handled through the
255 ACPI. This driver is required for access to controls not covered
256 by the general ACPI drivers, such as LCD brightness, video output,
257 etc.
258
259 This driver differs from the non-ACPI Toshiba laptop driver (located
260 under "Processor type and features") in several aspects.
261 Configuration is accessed by reading and writing text files in the
262 /proc tree instead of by program interface to /dev. Furthermore, no
263 power management functions are exposed, as those are handled by the
264 general ACPI drivers.
265
266 More information about this driver is available at
267 <http://memebeam.org/toys/ToshibaAcpiDriver>.
268
269 If you have a legacy free Toshiba laptop (such as the Libretto L1
270 series), say Y.
271
272config ACPI_CUSTOM_DSDT
273 bool "Include Custom DSDT"
274 depends on !STANDALONE
275 default n
276 help
Matt LaPlantec73a6682006-10-03 22:24:43 +0200277 This option is to load a custom ACPI DSDT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700278 If you don't know what that is, say N.
279
280config ACPI_CUSTOM_DSDT_FILE
281 string "Custom DSDT Table file to include"
282 depends on ACPI_CUSTOM_DSDT
283 default ""
284 help
Uwe Zeisbergerc30fe7f2006-03-24 18:23:14 +0100285 Enter the full path name to the file which includes the AmlCode
286 declaration.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700287
288config ACPI_BLACKLIST_YEAR
Andi Kleen2eb1bdb2006-02-26 04:18:43 +0100289 int "Disable ACPI for systems before Jan 1st this year" if X86_32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700290 default 0
291 help
292 enter a 4-digit year, eg. 2001 to disable ACPI by default
293 on platforms with DMI BIOS date before January 1st that year.
294 "acpi=force" can be used to override this mechanism.
295
296 Enter 0 to disable this mechanism and allow ACPI to
297 run by default no matter what the year. (default)
298
299config ACPI_DEBUG
300 bool "Debug Statements"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700301 default n
302 help
303 The ACPI driver can optionally report errors with a great deal
304 of verbosity. Saying Y enables these statements. This will increase
305 your kernel size by around 50K.
306
Linus Torvalds1da177e2005-04-16 15:20:36 -0700307config ACPI_EC
308 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700309 default y
310 help
311 This driver is required on some systems for the proper operation of
312 the battery and thermal drivers. If you are compiling for a
313 mobile system, say Y.
314
315config ACPI_POWER
316 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700317 default y
318
Linus Torvalds1da177e2005-04-16 15:20:36 -0700319config ACPI_SYSTEM
320 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700321 default y
322 help
323 This driver will enable your system to shut down using ACPI, and
324 dump your ACPI DSDT table using /proc/acpi/dsdt.
325
Linus Torvalds1da177e2005-04-16 15:20:36 -0700326config X86_PM_TIMER
Andi Kleene78256b2006-02-26 04:18:37 +0100327 bool "Power Management Timer Support" if EMBEDDED
Linus Torvalds1da177e2005-04-16 15:20:36 -0700328 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400329 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700330 help
331 The Power Management Timer is available on all ACPI-capable,
332 in most cases even if ACPI is unusable or blacklisted.
333
Matt LaPlantec73a6682006-10-03 22:24:43 +0200334 This timing source is not affected by power management features
Linus Torvalds1da177e2005-04-16 15:20:36 -0700335 like aggressive processor idling, throttling, frequency and/or
336 voltage scaling, unlike the commonly used Time Stamp Counter
337 (TSC) timing source.
338
Andi Kleene78256b2006-02-26 04:18:37 +0100339 You should nearly always say Y here because many modern
340 systems require this timer.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700341
342config ACPI_CONTAINER
343 tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
344 depends on EXPERIMENTAL
345 default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
346 ---help---
Keiichiro Tokunaga45b1b192005-03-02 00:00:00 -0500347 This allows _physical_ insertion and removal of CPUs and memory.
348 This can be useful, for example, on NUMA machines that support
349 ACPI based physical hotplug of nodes, or non-NUMA machines that
350 support physical cpu/memory hot-plug.
351
352 If one selects "m", this driver can be loaded with
353 "modprobe acpi_container".
Linus Torvalds1da177e2005-04-16 15:20:36 -0700354
355config ACPI_HOTPLUG_MEMORY
356 tristate "Memory Hotplug"
357 depends on ACPI
Yasunori Gotobc02af92006-06-27 02:53:30 -0700358 depends on MEMORY_HOTPLUG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700359 default n
360 help
361 This driver adds supports for ACPI Memory Hotplug. This driver
362 provides support for fielding notifications on ACPI memory
363 devices (PNP0C80) which represent memory ranges that may be
364 onlined or offlined during runtime.
365
366 Enabling this driver assumes that your platform hardware
367 and firmware have support for hot-plugging physical memory. If
368 your system does not support physically adding or ripping out
Matt LaPlantec73a6682006-10-03 22:24:43 +0200369 memory DIMMs at some platform defined granularity (individually
Linus Torvalds1da177e2005-04-16 15:20:36 -0700370 or as a bank) at runtime, then you need not enable this driver.
371
372 If one selects "m," this driver can be loaded using the following
373 command:
374 $>modprobe acpi_memhotplug
Rich Townsend3f86b832006-07-01 11:36:54 -0400375
376config ACPI_SBS
377 tristate "Smart Battery System (EXPERIMENTAL)"
378 depends on X86 && I2C
379 depends on EXPERIMENTAL
Rich Townsend3f86b832006-07-01 11:36:54 -0400380 help
381 This driver adds support for the Smart Battery System.
382 Depends on I2C (Device Drivers ---> I2C support)
383 A "Smart Battery" is quite old and quite rare compared
384 to today's ACPI "Control Method" battery.
385
Linus Torvalds1da177e2005-04-16 15:20:36 -0700386endif # ACPI
387
388endmenu