blob: 7c49e103cf8fee8003fbedd8ee36c484767bf6bb [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 Brownebb6e1a62005-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
Kristen Carlson Accardib1a316f2007-02-28 20:13:17 -0800152 depends on ACPI_DOCK
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700153 help
154 This driver adds support for ACPI controlled removable drive
155 bays such as the IBM ultrabay or the Dell Module Bay.
156
Linus Torvalds1da177e2005-04-16 15:20:36 -0700157config ACPI_PROCESSOR
158 tristate "Processor"
Len Brown07fefe42005-08-25 12:22:04 -0400159 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700160 help
161 This driver installs ACPI as the idle handler for Linux, and uses
162 ACPI C2 and C3 processor states to save power, on systems that
Len Brown07fefe42005-08-25 12:22:04 -0400163 support it. It is required by several flavors of cpufreq
164 Performance-state drivers.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700165
166config ACPI_HOTPLUG_CPU
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400167 bool
168 depends on ACPI_PROCESSOR && HOTPLUG_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700169 select ACPI_CONTAINER
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400170 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700171
172config ACPI_THERMAL
173 tristate "Thermal Zone"
174 depends on ACPI_PROCESSOR
Len Brown07fefe42005-08-25 12:22:04 -0400175 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700176 help
177 This driver adds support for ACPI thermal zones. Most mobile and
178 some desktop systems support ACPI thermal zones. It is HIGHLY
179 recommended that this option be enabled, as your processor(s)
180 may be damaged without it.
181
182config ACPI_NUMA
183 bool "NUMA support"
184 depends on NUMA
Yasunori Goto762834e2006-06-23 02:03:19 -0700185 depends on (X86 || IA64)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700186 default y if IA64_GENERIC || IA64_SGI_SN2
187
188config ACPI_ASUS
189 tristate "ASUS/Medion Laptop Extras"
190 depends on X86
Holger Macht2039a6e2006-10-20 14:30:29 -0700191 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700192 ---help---
193 This driver provides support for extra features of ACPI-compatible
194 ASUS laptops. As some of Medion laptops are made by ASUS, it may also
195 support some Medion laptops (such as 9675 for example). It makes all
196 the extra buttons generate standard ACPI events that go through
197 /proc/acpi/events, and (on some models) adds support for changing the
198 display brightness and output, switching the LCD backlight on and off,
199 and most importantly, allows you to blink those fancy LEDs intended
200 for reporting mail and wireless status.
201
202 Note: display switching code is currently considered EXPERIMENTAL,
203 toying with these values may even lock your machine.
Corentin Chary85091b72007-01-26 14:04:30 +0100204
Linus Torvalds1da177e2005-04-16 15:20:36 -0700205 All settings are changed via /proc/acpi/asus directory entries. Owner
206 and group for these entries can be set with asus_uid and asus_gid
207 parameters.
Corentin Chary85091b72007-01-26 14:04:30 +0100208
Linus Torvalds1da177e2005-04-16 15:20:36 -0700209 More information and a userspace daemon for handling the extra buttons
210 at <http://sourceforge.net/projects/acpi4asus/>.
Corentin Chary85091b72007-01-26 14:04:30 +0100211
Linus Torvalds1da177e2005-04-16 15:20:36 -0700212 If you have an ACPI-compatible ASUS laptop, say Y or M here. This
213 driver is still under development, so if your laptop is unsupported or
214 something works not quite as expected, please use the mailing list
Corentin Chary85091b72007-01-26 14:04:30 +0100215 available on the above page (acpi4asus-user@lists.sourceforge.net).
216
217 NOTE: This driver is deprecated and will probably be removed soon,
218 use asus-laptop instead.
219
Linus Torvalds1da177e2005-04-16 15:20:36 -0700220config ACPI_IBM
221 tristate "IBM ThinkPad Laptop Extras"
222 depends on X86
Holger Macht8acb0252006-10-20 14:30:28 -0700223 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700224 ---help---
225 This is a Linux ACPI driver for the IBM ThinkPad laptops. It adds
226 support for Fn-Fx key combinations, Bluetooth control, video
227 output switching, ThinkLight control, UltraBay eject and more.
228 For more information about this driver see <file:Documentation/ibm-acpi.txt>
229 and <http://ibm-acpi.sf.net/> .
230
231 If you have an IBM ThinkPad laptop, say Y or M here.
232
Kristen Accardi63e5f242006-02-23 17:56:06 -0800233config ACPI_IBM_DOCK
234 bool "Legacy Docking Station Support"
235 depends on ACPI_IBM
Len Brown8d7bff62006-07-09 22:09:57 -0400236 depends on ACPI_DOCK=n
Kristen Accardi63e5f242006-02-23 17:56:06 -0800237 default n
238 ---help---
239 Allows the ibm_acpi driver to handle docking station events.
240 This support is obsoleted by CONFIG_HOTPLUG_PCI_ACPI. It will
241 allow locking and removing the laptop from the docking station,
242 but will not properly connect PCI devices.
243
244 If you are not sure, say N here.
245
Linus Torvalds1da177e2005-04-16 15:20:36 -0700246config ACPI_TOSHIBA
247 tristate "Toshiba Laptop Extras"
248 depends on X86
Holger Machtc9263552006-10-20 14:30:29 -0700249 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700250 ---help---
251 This driver adds support for access to certain system settings
252 on "legacy free" Toshiba laptops. These laptops can be recognized by
253 their lack of a BIOS setup menu and APM support.
254
255 On these machines, all system configuration is handled through the
256 ACPI. This driver is required for access to controls not covered
257 by the general ACPI drivers, such as LCD brightness, video output,
258 etc.
259
260 This driver differs from the non-ACPI Toshiba laptop driver (located
261 under "Processor type and features") in several aspects.
262 Configuration is accessed by reading and writing text files in the
263 /proc tree instead of by program interface to /dev. Furthermore, no
264 power management functions are exposed, as those are handled by the
265 general ACPI drivers.
266
267 More information about this driver is available at
268 <http://memebeam.org/toys/ToshibaAcpiDriver>.
269
270 If you have a legacy free Toshiba laptop (such as the Libretto L1
271 series), say Y.
272
273config ACPI_CUSTOM_DSDT
274 bool "Include Custom DSDT"
275 depends on !STANDALONE
276 default n
277 help
Matt LaPlantec73a6682006-10-03 22:24:43 +0200278 This option is to load a custom ACPI DSDT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700279 If you don't know what that is, say N.
280
281config ACPI_CUSTOM_DSDT_FILE
282 string "Custom DSDT Table file to include"
283 depends on ACPI_CUSTOM_DSDT
284 default ""
285 help
Uwe Zeisbergerc30fe7f2006-03-24 18:23:14 +0100286 Enter the full path name to the file which includes the AmlCode
287 declaration.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700288
289config ACPI_BLACKLIST_YEAR
Andi Kleen2eb1bdb2006-02-26 04:18:43 +0100290 int "Disable ACPI for systems before Jan 1st this year" if X86_32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700291 default 0
292 help
293 enter a 4-digit year, eg. 2001 to disable ACPI by default
294 on platforms with DMI BIOS date before January 1st that year.
295 "acpi=force" can be used to override this mechanism.
296
297 Enter 0 to disable this mechanism and allow ACPI to
298 run by default no matter what the year. (default)
299
300config ACPI_DEBUG
301 bool "Debug Statements"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700302 default n
303 help
304 The ACPI driver can optionally report errors with a great deal
305 of verbosity. Saying Y enables these statements. This will increase
306 your kernel size by around 50K.
307
Linus Torvalds1da177e2005-04-16 15:20:36 -0700308config ACPI_EC
309 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700310 default y
311 help
312 This driver is required on some systems for the proper operation of
313 the battery and thermal drivers. If you are compiling for a
314 mobile system, say Y.
315
316config ACPI_POWER
317 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700318 default y
319
Linus Torvalds1da177e2005-04-16 15:20:36 -0700320config ACPI_SYSTEM
321 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700322 default y
323 help
324 This driver will enable your system to shut down using ACPI, and
325 dump your ACPI DSDT table using /proc/acpi/dsdt.
326
Linus Torvalds1da177e2005-04-16 15:20:36 -0700327config X86_PM_TIMER
Andi Kleene78256b2006-02-26 04:18:37 +0100328 bool "Power Management Timer Support" if EMBEDDED
Linus Torvalds1da177e2005-04-16 15:20:36 -0700329 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400330 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700331 help
332 The Power Management Timer is available on all ACPI-capable,
333 in most cases even if ACPI is unusable or blacklisted.
334
Matt LaPlantec73a6682006-10-03 22:24:43 +0200335 This timing source is not affected by power management features
Linus Torvalds1da177e2005-04-16 15:20:36 -0700336 like aggressive processor idling, throttling, frequency and/or
337 voltage scaling, unlike the commonly used Time Stamp Counter
338 (TSC) timing source.
339
Andi Kleene78256b2006-02-26 04:18:37 +0100340 You should nearly always say Y here because many modern
341 systems require this timer.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700342
343config ACPI_CONTAINER
344 tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
345 depends on EXPERIMENTAL
346 default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
347 ---help---
Keiichiro Tokunaga45b1b192005-03-02 00:00:00 -0500348 This allows _physical_ insertion and removal of CPUs and memory.
349 This can be useful, for example, on NUMA machines that support
350 ACPI based physical hotplug of nodes, or non-NUMA machines that
351 support physical cpu/memory hot-plug.
352
353 If one selects "m", this driver can be loaded with
354 "modprobe acpi_container".
Linus Torvalds1da177e2005-04-16 15:20:36 -0700355
356config ACPI_HOTPLUG_MEMORY
357 tristate "Memory Hotplug"
358 depends on ACPI
Yasunori Gotobc02af92006-06-27 02:53:30 -0700359 depends on MEMORY_HOTPLUG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700360 default n
361 help
362 This driver adds supports for ACPI Memory Hotplug. This driver
363 provides support for fielding notifications on ACPI memory
364 devices (PNP0C80) which represent memory ranges that may be
365 onlined or offlined during runtime.
366
367 Enabling this driver assumes that your platform hardware
368 and firmware have support for hot-plugging physical memory. If
369 your system does not support physically adding or ripping out
Matt LaPlantec73a6682006-10-03 22:24:43 +0200370 memory DIMMs at some platform defined granularity (individually
Linus Torvalds1da177e2005-04-16 15:20:36 -0700371 or as a bank) at runtime, then you need not enable this driver.
372
373 If one selects "m," this driver can be loaded using the following
374 command:
375 $>modprobe acpi_memhotplug
Rich Townsend3f86b832006-07-01 11:36:54 -0400376
377config ACPI_SBS
378 tristate "Smart Battery System (EXPERIMENTAL)"
379 depends on X86 && I2C
380 depends on EXPERIMENTAL
Rich Townsend3f86b832006-07-01 11:36:54 -0400381 help
382 This driver adds support for the Smart Battery System.
383 Depends on I2C (Device Drivers ---> I2C support)
384 A "Smart Battery" is quite old and quite rare compared
385 to today's ACPI "Control Method" battery.
386
Linus Torvalds1da177e2005-04-16 15:20:36 -0700387endif # ACPI
388
389endmenu