blob: 20eacc2c9e0e5223f27d9f979672a5ed031b350b [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
Linus Torvalds1da177e2005-04-16 15:20:36 -070016 default y
17 ---help---
18 Advanced Configuration and Power Interface (ACPI) support for
19 Linux requires an ACPI compliant platform (hardware/firmware),
20 and assumes the presence of OS-directed configuration and power
21 management (OSPM) software. This option will enlarge your
22 kernel by about 70K.
23
24 Linux ACPI provides a robust functional replacement for several
25 legacy configuration and power management interfaces, including
26 the Plug-and-Play BIOS specification (PnP BIOS), the
27 MultiProcessor Specification (MPS), and the Advanced Power
28 Management (APM) specification. If both ACPI and APM support
29 are configured, whichever is loaded first shall be used.
30
31 The ACPI SourceForge project contains the latest source code,
32 documentation, tools, mailing list subscription, and other
33 information. This project is available at:
34 <http://sourceforge.net/projects/acpi>
35
36 Linux support for ACPI is based on Intel Corporation's ACPI
37 Component Architecture (ACPI CA). For more information see:
38 <http://developer.intel.com/technology/iapc/acpi>
39
40 ACPI is an open industry specification co-developed by Compaq,
41 Intel, Microsoft, Phoenix, and Toshiba. The specification is
42 available at:
43 <http://www.acpi.info>
44
Len Brown3e11c3c2005-05-27 04:53:27 -040045if ACPI
46
Linus Torvalds1da177e2005-04-16 15:20:36 -070047config ACPI_SLEEP
Len Brownbfea6c22005-08-25 12:15:11 -040048 bool "Sleep States"
Li Shaohua5a72e042005-06-25 14:55:06 -070049 depends on X86 && (!SMP || SUSPEND_SMP)
Len Brownbfea6c22005-08-25 12:15:11 -040050 depends on PM
Linus Torvalds1da177e2005-04-16 15:20:36 -070051 default y
52 ---help---
53 This option adds support for ACPI suspend states.
54
55 With this option, you will be able to put the system "to sleep".
56 Sleep states are low power states for the system and devices. All
57 of the system operating state is saved to either memory or disk
58 (depending on the state), to allow the system to resume operation
59 quickly at your request.
60
61 Although this option sounds really nifty, barely any of the device
62 drivers have been converted to the new driver model and hence few
63 have proper power management support.
64
65 This option is not recommended for anyone except those doing driver
66 power management development.
67
68config ACPI_SLEEP_PROC_FS
69 bool
70 depends on ACPI_SLEEP && PROC_FS
71 default y
72
Len Brownebb6e1a62005-04-14 23:12:56 -040073config ACPI_SLEEP_PROC_SLEEP
74 bool "/proc/acpi/sleep (deprecated)"
75 depends on ACPI_SLEEP_PROC_FS
76 default n
77 ---help---
78 Create /proc/acpi/sleep
79 Deprecated by /sys/power/state
80
Zhang Ruib981c592007-01-29 11:02:30 +080081config ACPI_PROCFS
82 bool "Procfs interface (deprecated)"
83 depends on ACPI
84 default y
85 ---help---
86 Procfs interface for ACPI is made optional for back-compatible.
87 As the same functions are duplicated in sysfs interface
88 and this proc interface will be removed some time later,
89 it's marked as deprecated.
Zhang Rui219c3c82007-01-29 11:02:38 +080090 ( /proc/acpi/debug_layer && debug_level are deprecated by
Zhang Rui5bb730f2007-01-29 11:02:42 +080091 /sys/module/acpi/parameters/debug_layer && debug_level.
92 /proc/acpi/info is deprecated by
93 /sys/module/acpi/parameters/acpica_version )
Zhang Ruib981c592007-01-29 11:02:30 +080094
Linus Torvalds1da177e2005-04-16 15:20:36 -070095config ACPI_AC
96 tristate "AC Adapter"
97 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -040098 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -070099 help
100 This driver adds support for the AC Adapter object, which indicates
Len Brown07fefe42005-08-25 12:22:04 -0400101 whether a system is on AC, or not. If you have a system that can
102 switch between A/C and battery, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700103
104config ACPI_BATTERY
105 tristate "Battery"
106 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400107 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700108 help
109 This driver adds support for battery information through
110 /proc/acpi/battery. If you have a mobile system with a battery,
111 say Y.
112
113config ACPI_BUTTON
114 tristate "Button"
Dmitry Torokhovc0968f02006-11-09 00:40:13 -0500115 depends on INPUT
Len Brown07fefe42005-08-25 12:22:04 -0400116 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700117 help
Len Brown07fefe42005-08-25 12:22:04 -0400118 This driver handles events on the power, sleep and lid buttons.
119 A daemon reads /proc/acpi/event and perform user-defined actions
120 such as shutting down the system. This is necessary for
121 software controlled poweroff.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700122
123config ACPI_VIDEO
124 tristate "Video"
Yu Luming2f3d0002006-11-11 02:40:34 +0800125 depends on X86 && BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700126 help
127 This driver implement the ACPI Extensions For Display Adapters
128 for integrated graphics devices on motherboard, as specified in
129 ACPI 2.0 Specification, Appendix B, allowing to perform some basic
130 control like defining the video POST device, retrieving EDID information
131 or to setup a video output, etc.
132 Note that this is an ref. implementation only. It may or may not work
133 for your integrated video device.
134
Luming Yufb9802f2005-03-18 18:03:45 -0500135config ACPI_HOTKEY
Len Brownbfea6c22005-08-25 12:15:11 -0400136 tristate "Generic Hotkey (EXPERIMENTAL)"
Luming Yufb9802f2005-03-18 18:03:45 -0500137 depends on EXPERIMENTAL
Len Browneb7b6b32005-08-25 12:08:25 -0400138 depends on X86
Luming Yu79cda7d2005-08-03 18:07:59 -0400139 default n
Luming Yufb9802f2005-03-18 18:03:45 -0500140 help
Luming Yu79cda7d2005-08-03 18:07:59 -0400141 Experimental consolidated hotkey driver.
142 If you are unsure, say N.
Luming Yufb9802f2005-03-18 18:03:45 -0500143
Linus Torvalds1da177e2005-04-16 15:20:36 -0700144config ACPI_FAN
145 tristate "Fan"
Len Brown07fefe42005-08-25 12:22:04 -0400146 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700147 help
148 This driver adds support for ACPI fan devices, allowing user-mode
149 applications to perform basic fan control (on, off, status).
150
Len Brownc8f7a622006-07-09 17:22:28 -0400151config ACPI_DOCK
152 tristate "Dock"
Len Brown8d7bff62006-07-09 22:09:57 -0400153 depends on EXPERIMENTAL
Len Brownc8f7a622006-07-09 17:22:28 -0400154 help
155 This driver adds support for ACPI controlled docking stations
156
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700157config ACPI_BAY
Len Brown0ed1e382007-02-02 22:39:16 -0500158 tristate "Removable Drive Bay (EXPERIMENTAL)"
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700159 depends on EXPERIMENTAL
160 help
161 This driver adds support for ACPI controlled removable drive
162 bays such as the IBM ultrabay or the Dell Module Bay.
163
Linus Torvalds1da177e2005-04-16 15:20:36 -0700164config ACPI_PROCESSOR
165 tristate "Processor"
Len Brown07fefe42005-08-25 12:22:04 -0400166 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700167 help
168 This driver installs ACPI as the idle handler for Linux, and uses
169 ACPI C2 and C3 processor states to save power, on systems that
Len Brown07fefe42005-08-25 12:22:04 -0400170 support it. It is required by several flavors of cpufreq
171 Performance-state drivers.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700172
173config ACPI_HOTPLUG_CPU
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400174 bool
175 depends on ACPI_PROCESSOR && HOTPLUG_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700176 select ACPI_CONTAINER
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400177 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700178
179config ACPI_THERMAL
180 tristate "Thermal Zone"
181 depends on ACPI_PROCESSOR
Len Brown07fefe42005-08-25 12:22:04 -0400182 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700183 help
184 This driver adds support for ACPI thermal zones. Most mobile and
185 some desktop systems support ACPI thermal zones. It is HIGHLY
186 recommended that this option be enabled, as your processor(s)
187 may be damaged without it.
188
189config ACPI_NUMA
190 bool "NUMA support"
191 depends on NUMA
Yasunori Goto762834e2006-06-23 02:03:19 -0700192 depends on (X86 || IA64)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700193 default y if IA64_GENERIC || IA64_SGI_SN2
194
195config ACPI_ASUS
196 tristate "ASUS/Medion Laptop Extras"
197 depends on X86
Holger Macht2039a6e2006-10-20 14:30:29 -0700198 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700199 ---help---
200 This driver provides support for extra features of ACPI-compatible
201 ASUS laptops. As some of Medion laptops are made by ASUS, it may also
202 support some Medion laptops (such as 9675 for example). It makes all
203 the extra buttons generate standard ACPI events that go through
204 /proc/acpi/events, and (on some models) adds support for changing the
205 display brightness and output, switching the LCD backlight on and off,
206 and most importantly, allows you to blink those fancy LEDs intended
207 for reporting mail and wireless status.
208
209 Note: display switching code is currently considered EXPERIMENTAL,
210 toying with these values may even lock your machine.
Corentin Chary85091b72007-01-26 14:04:30 +0100211
Linus Torvalds1da177e2005-04-16 15:20:36 -0700212 All settings are changed via /proc/acpi/asus directory entries. Owner
213 and group for these entries can be set with asus_uid and asus_gid
214 parameters.
Corentin Chary85091b72007-01-26 14:04:30 +0100215
Linus Torvalds1da177e2005-04-16 15:20:36 -0700216 More information and a userspace daemon for handling the extra buttons
217 at <http://sourceforge.net/projects/acpi4asus/>.
Corentin Chary85091b72007-01-26 14:04:30 +0100218
Linus Torvalds1da177e2005-04-16 15:20:36 -0700219 If you have an ACPI-compatible ASUS laptop, say Y or M here. This
220 driver is still under development, so if your laptop is unsupported or
221 something works not quite as expected, please use the mailing list
Corentin Chary85091b72007-01-26 14:04:30 +0100222 available on the above page (acpi4asus-user@lists.sourceforge.net).
223
224 NOTE: This driver is deprecated and will probably be removed soon,
225 use asus-laptop instead.
226
Linus Torvalds1da177e2005-04-16 15:20:36 -0700227config ACPI_IBM
228 tristate "IBM ThinkPad Laptop Extras"
229 depends on X86
Holger Macht8acb0252006-10-20 14:30:28 -0700230 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700231 ---help---
232 This is a Linux ACPI driver for the IBM ThinkPad laptops. It adds
233 support for Fn-Fx key combinations, Bluetooth control, video
234 output switching, ThinkLight control, UltraBay eject and more.
235 For more information about this driver see <file:Documentation/ibm-acpi.txt>
236 and <http://ibm-acpi.sf.net/> .
237
238 If you have an IBM ThinkPad laptop, say Y or M here.
239
Kristen Accardi63e5f242006-02-23 17:56:06 -0800240config ACPI_IBM_DOCK
241 bool "Legacy Docking Station Support"
242 depends on ACPI_IBM
Len Brown8d7bff62006-07-09 22:09:57 -0400243 depends on ACPI_DOCK=n
Kristen Accardi63e5f242006-02-23 17:56:06 -0800244 default n
245 ---help---
246 Allows the ibm_acpi driver to handle docking station events.
247 This support is obsoleted by CONFIG_HOTPLUG_PCI_ACPI. It will
248 allow locking and removing the laptop from the docking station,
249 but will not properly connect PCI devices.
250
251 If you are not sure, say N here.
252
Linus Torvalds1da177e2005-04-16 15:20:36 -0700253config ACPI_TOSHIBA
254 tristate "Toshiba Laptop Extras"
255 depends on X86
Holger Machtc9263552006-10-20 14:30:29 -0700256 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700257 ---help---
258 This driver adds support for access to certain system settings
259 on "legacy free" Toshiba laptops. These laptops can be recognized by
260 their lack of a BIOS setup menu and APM support.
261
262 On these machines, all system configuration is handled through the
263 ACPI. This driver is required for access to controls not covered
264 by the general ACPI drivers, such as LCD brightness, video output,
265 etc.
266
267 This driver differs from the non-ACPI Toshiba laptop driver (located
268 under "Processor type and features") in several aspects.
269 Configuration is accessed by reading and writing text files in the
270 /proc tree instead of by program interface to /dev. Furthermore, no
271 power management functions are exposed, as those are handled by the
272 general ACPI drivers.
273
274 More information about this driver is available at
275 <http://memebeam.org/toys/ToshibaAcpiDriver>.
276
277 If you have a legacy free Toshiba laptop (such as the Libretto L1
278 series), say Y.
279
280config ACPI_CUSTOM_DSDT
281 bool "Include Custom DSDT"
282 depends on !STANDALONE
283 default n
284 help
Matt LaPlantec73a6682006-10-03 22:24:43 +0200285 This option is to load a custom ACPI DSDT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700286 If you don't know what that is, say N.
287
288config ACPI_CUSTOM_DSDT_FILE
289 string "Custom DSDT Table file to include"
290 depends on ACPI_CUSTOM_DSDT
291 default ""
292 help
Uwe Zeisbergerc30fe7f2006-03-24 18:23:14 +0100293 Enter the full path name to the file which includes the AmlCode
294 declaration.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700295
296config ACPI_BLACKLIST_YEAR
Andi Kleen2eb1bdb2006-02-26 04:18:43 +0100297 int "Disable ACPI for systems before Jan 1st this year" if X86_32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700298 default 0
299 help
300 enter a 4-digit year, eg. 2001 to disable ACPI by default
301 on platforms with DMI BIOS date before January 1st that year.
302 "acpi=force" can be used to override this mechanism.
303
304 Enter 0 to disable this mechanism and allow ACPI to
305 run by default no matter what the year. (default)
306
307config ACPI_DEBUG
308 bool "Debug Statements"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700309 default n
310 help
311 The ACPI driver can optionally report errors with a great deal
312 of verbosity. Saying Y enables these statements. This will increase
313 your kernel size by around 50K.
314
Linus Torvalds1da177e2005-04-16 15:20:36 -0700315config ACPI_EC
316 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700317 default y
318 help
319 This driver is required on some systems for the proper operation of
320 the battery and thermal drivers. If you are compiling for a
321 mobile system, say Y.
322
323config ACPI_POWER
324 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700325 default y
326
Linus Torvalds1da177e2005-04-16 15:20:36 -0700327config ACPI_SYSTEM
328 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700329 default y
330 help
331 This driver will enable your system to shut down using ACPI, and
332 dump your ACPI DSDT table using /proc/acpi/dsdt.
333
Linus Torvalds1da177e2005-04-16 15:20:36 -0700334config X86_PM_TIMER
Andi Kleene78256b2006-02-26 04:18:37 +0100335 bool "Power Management Timer Support" if EMBEDDED
Linus Torvalds1da177e2005-04-16 15:20:36 -0700336 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400337 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700338 help
339 The Power Management Timer is available on all ACPI-capable,
340 in most cases even if ACPI is unusable or blacklisted.
341
Matt LaPlantec73a6682006-10-03 22:24:43 +0200342 This timing source is not affected by power management features
Linus Torvalds1da177e2005-04-16 15:20:36 -0700343 like aggressive processor idling, throttling, frequency and/or
344 voltage scaling, unlike the commonly used Time Stamp Counter
345 (TSC) timing source.
346
Andi Kleene78256b2006-02-26 04:18:37 +0100347 You should nearly always say Y here because many modern
348 systems require this timer.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700349
350config ACPI_CONTAINER
351 tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
352 depends on EXPERIMENTAL
353 default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
354 ---help---
Keiichiro Tokunaga45b1b192005-03-02 00:00:00 -0500355 This allows _physical_ insertion and removal of CPUs and memory.
356 This can be useful, for example, on NUMA machines that support
357 ACPI based physical hotplug of nodes, or non-NUMA machines that
358 support physical cpu/memory hot-plug.
359
360 If one selects "m", this driver can be loaded with
361 "modprobe acpi_container".
Linus Torvalds1da177e2005-04-16 15:20:36 -0700362
363config ACPI_HOTPLUG_MEMORY
364 tristate "Memory Hotplug"
365 depends on ACPI
Yasunori Gotobc02af92006-06-27 02:53:30 -0700366 depends on MEMORY_HOTPLUG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700367 default n
368 help
369 This driver adds supports for ACPI Memory Hotplug. This driver
370 provides support for fielding notifications on ACPI memory
371 devices (PNP0C80) which represent memory ranges that may be
372 onlined or offlined during runtime.
373
374 Enabling this driver assumes that your platform hardware
375 and firmware have support for hot-plugging physical memory. If
376 your system does not support physically adding or ripping out
Matt LaPlantec73a6682006-10-03 22:24:43 +0200377 memory DIMMs at some platform defined granularity (individually
Linus Torvalds1da177e2005-04-16 15:20:36 -0700378 or as a bank) at runtime, then you need not enable this driver.
379
380 If one selects "m," this driver can be loaded using the following
381 command:
382 $>modprobe acpi_memhotplug
Rich Townsend3f86b832006-07-01 11:36:54 -0400383
384config ACPI_SBS
385 tristate "Smart Battery System (EXPERIMENTAL)"
386 depends on X86 && I2C
387 depends on EXPERIMENTAL
Rich Townsend3f86b832006-07-01 11:36:54 -0400388 help
389 This driver adds support for the Smart Battery System.
390 Depends on I2C (Device Drivers ---> I2C support)
391 A "Smart Battery" is quite old and quite rare compared
392 to today's ACPI "Control Method" battery.
393
Linus Torvalds1da177e2005-04-16 15:20:36 -0700394endif # ACPI
395
396endmenu