blob: c8e832044580a7be7baf255c20964ab621a5f3c7 [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"
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/
Alexey Starikovskiyfdcedbb2007-11-19 16:33:45 +030070config ACPI_PROCFS_POWER
71 bool "Deprecated power /proc/acpi folders"
72 depends on PROC_FS
73 default y
74 ---help---
75 For backwards compatibility, this option allows
76 deprecated power /proc/acpi/ folders to exist, even when
77 they have been replaced by functions in /sys.
78 The deprecated folders (and their replacements) include:
79 /proc/acpi/battery/* (/sys/class/power_supply/*)
80 /proc/acpi/ac_adapter/* (sys/class/power_supply/*)
81 This option has no effect on /proc/acpi/ folders
82 and functions, which do not yet exist in /sys
Zhang Ruib981c592007-01-29 11:02:30 +080083
Alexey Starikovskiyfdcedbb2007-11-19 16:33:45 +030084 Say N to delete power /proc/acpi/ folders that have moved to /sys/
Alexey Starikovskiy97749cd2008-01-01 14:27:24 -050085config ACPI_SYSFS_POWER
86 bool "Future power /sys interface"
87 select POWER_SUPPLY
88 default y
89 ---help---
90 Say N to disable power /sys interface
Len Brown14e04fb2007-08-23 15:20:26 -040091config ACPI_PROC_EVENT
92 bool "Deprecated /proc/acpi/event support"
93 depends on PROC_FS
Hugh Dickins721ebe02007-08-27 16:04:39 +010094 default y
Len Brown14e04fb2007-08-23 15:20:26 -040095 ---help---
96 A user-space daemon, acpi, typically read /proc/acpi/event
97 and handled all ACPI sub-system generated events.
98
99 These events are now delivered to user-space via
100 either the input layer, or as netlink events.
101
Hugh Dickins721ebe02007-08-27 16:04:39 +0100102 This build option enables the old code for legacy
Len Brown14e04fb2007-08-23 15:20:26 -0400103 user-space implementation. After some time, this will
104 be moved under CONFIG_ACPI_PROCFS, and then deleted.
105
Hugh Dickins721ebe02007-08-27 16:04:39 +0100106 Say Y here to retain the old behaviour. Say N if your
107 user-space is newer than kernel 2.6.23 (September 2007).
108
Linus Torvalds1da177e2005-04-16 15:20:36 -0700109config ACPI_AC
110 tristate "AC Adapter"
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -0400111 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400112 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700113 help
114 This driver adds support for the AC Adapter object, which indicates
Len Brown07fefe42005-08-25 12:22:04 -0400115 whether a system is on AC, or not. If you have a system that can
116 switch between A/C and battery, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700117
118config ACPI_BATTERY
119 tristate "Battery"
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -0400120 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400121 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700122 help
123 This driver adds support for battery information through
124 /proc/acpi/battery. If you have a mobile system with a battery,
125 say Y.
126
127config ACPI_BUTTON
128 tristate "Button"
Dmitry Torokhovc0968f02006-11-09 00:40:13 -0500129 depends on INPUT
Len Brown07fefe42005-08-25 12:22:04 -0400130 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700131 help
Len Brown07fefe42005-08-25 12:22:04 -0400132 This driver handles events on the power, sleep and lid buttons.
133 A daemon reads /proc/acpi/event and perform user-defined actions
134 such as shutting down the system. This is necessary for
135 software controlled poweroff.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700136
137config ACPI_VIDEO
138 tristate "Video"
Luming Yu23b0f012007-05-09 21:07:05 +0800139 depends on X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL
Andreas Herrmann03e2bf22007-09-17 23:41:05 +0200140 depends on INPUT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700141 help
142 This driver implement the ACPI Extensions For Display Adapters
143 for integrated graphics devices on motherboard, as specified in
144 ACPI 2.0 Specification, Appendix B, allowing to perform some basic
145 control like defining the video POST device, retrieving EDID information
146 or to setup a video output, etc.
147 Note that this is an ref. implementation only. It may or may not work
148 for your integrated video device.
149
150config ACPI_FAN
151 tristate "Fan"
Len Brown07fefe42005-08-25 12:22:04 -0400152 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700153 help
154 This driver adds support for ACPI fan devices, allowing user-mode
155 applications to perform basic fan control (on, off, status).
156
Len Brownc8f7a622006-07-09 17:22:28 -0400157config ACPI_DOCK
158 tristate "Dock"
Len Brown8d7bff62006-07-09 22:09:57 -0400159 depends on EXPERIMENTAL
Len Brownc8f7a622006-07-09 17:22:28 -0400160 help
161 This driver adds support for ACPI controlled docking stations
162
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700163config ACPI_BAY
Len Brown0ed1e382007-02-02 22:39:16 -0500164 tristate "Removable Drive Bay (EXPERIMENTAL)"
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700165 depends on EXPERIMENTAL
Kristen Carlson Accardib1a316f2007-02-28 20:13:17 -0800166 depends on ACPI_DOCK
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700167 help
168 This driver adds support for ACPI controlled removable drive
169 bays such as the IBM ultrabay or the Dell Module Bay.
170
Linus Torvalds1da177e2005-04-16 15:20:36 -0700171config ACPI_PROCESSOR
172 tristate "Processor"
Len Brown07fefe42005-08-25 12:22:04 -0400173 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700174 help
175 This driver installs ACPI as the idle handler for Linux, and uses
176 ACPI C2 and C3 processor states to save power, on systems that
Len Brown07fefe42005-08-25 12:22:04 -0400177 support it. It is required by several flavors of cpufreq
178 Performance-state drivers.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700179
180config ACPI_HOTPLUG_CPU
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400181 bool
182 depends on ACPI_PROCESSOR && HOTPLUG_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700183 select ACPI_CONTAINER
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400184 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700185
186config ACPI_THERMAL
187 tristate "Thermal Zone"
188 depends on ACPI_PROCESSOR
Len Brown07fefe42005-08-25 12:22:04 -0400189 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700190 help
191 This driver adds support for ACPI thermal zones. Most mobile and
192 some desktop systems support ACPI thermal zones. It is HIGHLY
193 recommended that this option be enabled, as your processor(s)
194 may be damaged without it.
195
196config ACPI_NUMA
197 bool "NUMA support"
198 depends on NUMA
Yasunori Goto762834e2006-06-23 02:03:19 -0700199 depends on (X86 || IA64)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700200 default y if IA64_GENERIC || IA64_SGI_SN2
201
202config ACPI_ASUS
203 tristate "ASUS/Medion Laptop Extras"
204 depends on X86
Holger Macht2039a6e2006-10-20 14:30:29 -0700205 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700206 ---help---
207 This driver provides support for extra features of ACPI-compatible
208 ASUS laptops. As some of Medion laptops are made by ASUS, it may also
209 support some Medion laptops (such as 9675 for example). It makes all
210 the extra buttons generate standard ACPI events that go through
211 /proc/acpi/events, and (on some models) adds support for changing the
212 display brightness and output, switching the LCD backlight on and off,
213 and most importantly, allows you to blink those fancy LEDs intended
214 for reporting mail and wireless status.
215
216 Note: display switching code is currently considered EXPERIMENTAL,
217 toying with these values may even lock your machine.
Corentin Chary85091b72007-01-26 14:04:30 +0100218
Linus Torvalds1da177e2005-04-16 15:20:36 -0700219 All settings are changed via /proc/acpi/asus directory entries. Owner
220 and group for these entries can be set with asus_uid and asus_gid
221 parameters.
Corentin Chary85091b72007-01-26 14:04:30 +0100222
Linus Torvalds1da177e2005-04-16 15:20:36 -0700223 More information and a userspace daemon for handling the extra buttons
224 at <http://sourceforge.net/projects/acpi4asus/>.
Corentin Chary85091b72007-01-26 14:04:30 +0100225
Linus Torvalds1da177e2005-04-16 15:20:36 -0700226 If you have an ACPI-compatible ASUS laptop, say Y or M here. This
227 driver is still under development, so if your laptop is unsupported or
228 something works not quite as expected, please use the mailing list
Corentin Chary85091b72007-01-26 14:04:30 +0100229 available on the above page (acpi4asus-user@lists.sourceforge.net).
230
231 NOTE: This driver is deprecated and will probably be removed soon,
232 use asus-laptop instead.
233
Linus Torvalds1da177e2005-04-16 15:20:36 -0700234config ACPI_TOSHIBA
235 tristate "Toshiba Laptop Extras"
236 depends on X86
Holger Machtc9263552006-10-20 14:30:29 -0700237 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700238 ---help---
239 This driver adds support for access to certain system settings
240 on "legacy free" Toshiba laptops. These laptops can be recognized by
241 their lack of a BIOS setup menu and APM support.
242
243 On these machines, all system configuration is handled through the
244 ACPI. This driver is required for access to controls not covered
245 by the general ACPI drivers, such as LCD brightness, video output,
246 etc.
247
248 This driver differs from the non-ACPI Toshiba laptop driver (located
249 under "Processor type and features") in several aspects.
250 Configuration is accessed by reading and writing text files in the
251 /proc tree instead of by program interface to /dev. Furthermore, no
252 power management functions are exposed, as those are handled by the
253 general ACPI drivers.
254
255 More information about this driver is available at
256 <http://memebeam.org/toys/ToshibaAcpiDriver>.
257
258 If you have a legacy free Toshiba laptop (such as the Libretto L1
259 series), say Y.
260
261config ACPI_CUSTOM_DSDT
262 bool "Include Custom DSDT"
263 depends on !STANDALONE
264 default n
265 help
Len Brownd89e9d62008-02-06 19:28:02 -0500266 This option supports a custom DSDT by linking it into the kernel.
267 See Documentation/acpi/dsdt-override.txt
268
269 If unsure, say N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700270
271config ACPI_CUSTOM_DSDT_FILE
272 string "Custom DSDT Table file to include"
273 depends on ACPI_CUSTOM_DSDT
274 default ""
275 help
Uwe Zeisbergerc30fe7f2006-03-24 18:23:14 +0100276 Enter the full path name to the file which includes the AmlCode
277 declaration.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700278
Markus Gaugusch71fc47a2008-02-05 00:04:06 +0100279config ACPI_CUSTOM_DSDT_INITRD
280 bool "Read Custom DSDT from initramfs"
281 depends on BLK_DEV_INITRD
282 default n
283 help
Len Brownd89e9d62008-02-06 19:28:02 -0500284 This option supports a custom DSDT by optionally loading it from initrd.
285 See Documentation/acpi/dsdt-override.txt
Markus Gaugusch71fc47a2008-02-05 00:04:06 +0100286
Len Brownd89e9d62008-02-06 19:28:02 -0500287 If you are not using this feature now, but may use it later,
288 it is safe to say Y here.
Markus Gaugusch71fc47a2008-02-05 00:04:06 +0100289
Linus Torvalds1da177e2005-04-16 15:20:36 -0700290config ACPI_BLACKLIST_YEAR
Andi Kleen2eb1bdb2006-02-26 04:18:43 +0100291 int "Disable ACPI for systems before Jan 1st this year" if X86_32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700292 default 0
293 help
294 enter a 4-digit year, eg. 2001 to disable ACPI by default
295 on platforms with DMI BIOS date before January 1st that year.
296 "acpi=force" can be used to override this mechanism.
297
298 Enter 0 to disable this mechanism and allow ACPI to
299 run by default no matter what the year. (default)
300
301config ACPI_DEBUG
302 bool "Debug Statements"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700303 default n
304 help
305 The ACPI driver can optionally report errors with a great deal
306 of verbosity. Saying Y enables these statements. This will increase
307 your kernel size by around 50K.
308
Thomas Renninger798d9102007-05-31 17:20:39 +0200309config ACPI_DEBUG_FUNC_TRACE
310 bool "Additionally enable ACPI function tracing"
311 default n
312 depends on ACPI_DEBUG
313 help
314 ACPI Debug Statements slow down ACPI processing. Function trace
315 is about half of the penalty and is rarely useful.
316
Linus Torvalds1da177e2005-04-16 15:20:36 -0700317config ACPI_EC
318 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700319 default y
320 help
321 This driver is required on some systems for the proper operation of
322 the battery and thermal drivers. If you are compiling for a
323 mobile system, say Y.
324
325config ACPI_POWER
326 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700327 default y
328
Linus Torvalds1da177e2005-04-16 15:20:36 -0700329config ACPI_SYSTEM
330 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700331 default y
332 help
333 This driver will enable your system to shut down using ACPI, and
334 dump your ACPI DSDT table using /proc/acpi/dsdt.
335
Linus Torvalds1da177e2005-04-16 15:20:36 -0700336config X86_PM_TIMER
Andi Kleene78256b2006-02-26 04:18:37 +0100337 bool "Power Management Timer Support" if EMBEDDED
Linus Torvalds1da177e2005-04-16 15:20:36 -0700338 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400339 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700340 help
341 The Power Management Timer is available on all ACPI-capable,
342 in most cases even if ACPI is unusable or blacklisted.
343
Matt LaPlantec73a6682006-10-03 22:24:43 +0200344 This timing source is not affected by power management features
Linus Torvalds1da177e2005-04-16 15:20:36 -0700345 like aggressive processor idling, throttling, frequency and/or
346 voltage scaling, unlike the commonly used Time Stamp Counter
347 (TSC) timing source.
348
Andi Kleene78256b2006-02-26 04:18:37 +0100349 You should nearly always say Y here because many modern
350 systems require this timer.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700351
352config ACPI_CONTAINER
353 tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
354 depends on EXPERIMENTAL
355 default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
356 ---help---
Keiichiro Tokunaga45b1b192005-03-02 00:00:00 -0500357 This allows _physical_ insertion and removal of CPUs and memory.
358 This can be useful, for example, on NUMA machines that support
359 ACPI based physical hotplug of nodes, or non-NUMA machines that
360 support physical cpu/memory hot-plug.
361
362 If one selects "m", this driver can be loaded with
363 "modprobe acpi_container".
Linus Torvalds1da177e2005-04-16 15:20:36 -0700364
365config ACPI_HOTPLUG_MEMORY
366 tristate "Memory Hotplug"
Yasunori Gotobc02af92006-06-27 02:53:30 -0700367 depends on MEMORY_HOTPLUG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700368 default n
369 help
370 This driver adds supports for ACPI Memory Hotplug. This driver
371 provides support for fielding notifications on ACPI memory
372 devices (PNP0C80) which represent memory ranges that may be
373 onlined or offlined during runtime.
374
375 Enabling this driver assumes that your platform hardware
376 and firmware have support for hot-plugging physical memory. If
377 your system does not support physically adding or ripping out
Matt LaPlantec73a6682006-10-03 22:24:43 +0200378 memory DIMMs at some platform defined granularity (individually
Linus Torvalds1da177e2005-04-16 15:20:36 -0700379 or as a bank) at runtime, then you need not enable this driver.
380
381 If one selects "m," this driver can be loaded using the following
382 command:
383 $>modprobe acpi_memhotplug
Rich Townsend3f86b832006-07-01 11:36:54 -0400384
385config 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
Rich Townsend3f86b832006-07-01 11:36:54 -0400388 help
Alexey Starikovskiy94f6c082007-09-26 19:43:48 +0400389 This driver adds support for the Smart Battery System, another
390 type of access to battery information, found on some laptops.
Rich Townsend3f86b832006-07-01 11:36:54 -0400391
Linus Torvalds1da177e2005-04-16 15:20:36 -0700392endif # ACPI