blob: 497e92d3833b02ba3410b49528e71024b4142629 [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
Andrew Mortoncbff2fb2007-11-14 16:59:21 -080053 default y
Zhang Ruib981c592007-01-29 11:02:30 +080054 ---help---
Len Brownfb804712007-07-24 01:50:46 -040055 For backwards compatibility, this option allows
Rolf Eike Beer405bbe9f2007-10-20 03:10:57 +020056 deprecated /proc/acpi/ files to exist, even when
Len Brownfb804712007-07-24 01:50:46 -040057 they have been replaced by functions in /sys.
58 The deprecated files (and their replacements) include:
59
Len Brown43532c82007-07-24 02:16:50 -040060 /proc/acpi/sleep (/sys/power/state)
Len Brownfb804712007-07-24 01:50:46 -040061 /proc/acpi/info (/sys/modules/acpi/parameters/acpica_version)
62 /proc/acpi/dsdt (/sys/firmware/acpi/tables/DSDT)
63 /proc/acpi/fadt (/sys/firmware/acpi/tables/FACP)
Jerome Pinot6e800af2007-11-11 03:01:10 +090064 /proc/acpi/battery (/sys/class/power_supply)
Len Brownfb804712007-07-24 01:50:46 -040065 /proc/acpi/debug_layer (/sys/module/acpi/parameters/debug_layer)
66 /proc/acpi/debug_level (/sys/module/acpi/parameters/debug_level)
67
68 This option has no effect on /proc/acpi/ files
69 and functions which do not yet exist in /sys.
70
71 Say N to delete /proc/acpi/ files that have moved to /sys/
Alexey Starikovskiyfdcedbb2007-11-19 16:33:45 +030072config ACPI_PROCFS_POWER
73 bool "Deprecated power /proc/acpi folders"
74 depends on PROC_FS
75 default y
76 ---help---
77 For backwards compatibility, this option allows
78 deprecated power /proc/acpi/ folders to exist, even when
79 they have been replaced by functions in /sys.
80 The deprecated folders (and their replacements) include:
81 /proc/acpi/battery/* (/sys/class/power_supply/*)
82 /proc/acpi/ac_adapter/* (sys/class/power_supply/*)
83 This option has no effect on /proc/acpi/ folders
84 and functions, which do not yet exist in /sys
Zhang Ruib981c592007-01-29 11:02:30 +080085
Alexey Starikovskiyfdcedbb2007-11-19 16:33:45 +030086 Say N to delete power /proc/acpi/ folders that have moved to /sys/
Len Brown14e04fb2007-08-23 15:20:26 -040087config ACPI_PROC_EVENT
88 bool "Deprecated /proc/acpi/event support"
89 depends on PROC_FS
Hugh Dickins721ebe02007-08-27 16:04:39 +010090 default y
Len Brown14e04fb2007-08-23 15:20:26 -040091 ---help---
92 A user-space daemon, acpi, typically read /proc/acpi/event
93 and handled all ACPI sub-system generated events.
94
95 These events are now delivered to user-space via
96 either the input layer, or as netlink events.
97
Hugh Dickins721ebe02007-08-27 16:04:39 +010098 This build option enables the old code for legacy
Len Brown14e04fb2007-08-23 15:20:26 -040099 user-space implementation. After some time, this will
100 be moved under CONFIG_ACPI_PROCFS, and then deleted.
101
Hugh Dickins721ebe02007-08-27 16:04:39 +0100102 Say Y here to retain the old behaviour. Say N if your
103 user-space is newer than kernel 2.6.23 (September 2007).
104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700105config ACPI_AC
106 tristate "AC Adapter"
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -0400107 depends on X86
108 select POWER_SUPPLY
Len Brown07fefe42005-08-25 12:22:04 -0400109 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700110 help
111 This driver adds support for the AC Adapter object, which indicates
Len Brown07fefe42005-08-25 12:22:04 -0400112 whether a system is on AC, or not. If you have a system that can
113 switch between A/C and battery, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700114
115config ACPI_BATTERY
116 tristate "Battery"
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -0400117 depends on X86
118 select POWER_SUPPLY
Len Brown07fefe42005-08-25 12:22:04 -0400119 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700120 help
121 This driver adds support for battery information through
122 /proc/acpi/battery. If you have a mobile system with a battery,
123 say Y.
124
125config ACPI_BUTTON
126 tristate "Button"
Dmitry Torokhovc0968f02006-11-09 00:40:13 -0500127 depends on INPUT
Len Brown07fefe42005-08-25 12:22:04 -0400128 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700129 help
Len Brown07fefe42005-08-25 12:22:04 -0400130 This driver handles events on the power, sleep and lid buttons.
131 A daemon reads /proc/acpi/event and perform user-defined actions
132 such as shutting down the system. This is necessary for
133 software controlled poweroff.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700134
135config ACPI_VIDEO
136 tristate "Video"
Luming Yu23b0f012007-05-09 21:07:05 +0800137 depends on X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL
Andreas Herrmann03e2bf22007-09-17 23:41:05 +0200138 depends on INPUT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700139 help
140 This driver implement the ACPI Extensions For Display Adapters
141 for integrated graphics devices on motherboard, as specified in
142 ACPI 2.0 Specification, Appendix B, allowing to perform some basic
143 control like defining the video POST device, retrieving EDID information
144 or to setup a video output, etc.
145 Note that this is an ref. implementation only. It may or may not work
146 for your integrated video device.
147
148config ACPI_FAN
149 tristate "Fan"
Len Brown07fefe42005-08-25 12:22:04 -0400150 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700151 help
152 This driver adds support for ACPI fan devices, allowing user-mode
153 applications to perform basic fan control (on, off, status).
154
Len Brownc8f7a62c2006-07-09 17:22:28 -0400155config ACPI_DOCK
156 tristate "Dock"
Len Brown8d7bff62006-07-09 22:09:57 -0400157 depends on EXPERIMENTAL
Len Brownc8f7a62c2006-07-09 17:22:28 -0400158 help
159 This driver adds support for ACPI controlled docking stations
160
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700161config ACPI_BAY
Len Brown0ed1e382007-02-02 22:39:16 -0500162 tristate "Removable Drive Bay (EXPERIMENTAL)"
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700163 depends on EXPERIMENTAL
Kristen Carlson Accardib1a316f2007-02-28 20:13:17 -0800164 depends on ACPI_DOCK
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700165 help
166 This driver adds support for ACPI controlled removable drive
167 bays such as the IBM ultrabay or the Dell Module Bay.
168
Linus Torvalds1da177e2005-04-16 15:20:36 -0700169config ACPI_PROCESSOR
170 tristate "Processor"
Len Brown07fefe42005-08-25 12:22:04 -0400171 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700172 help
173 This driver installs ACPI as the idle handler for Linux, and uses
174 ACPI C2 and C3 processor states to save power, on systems that
Len Brown07fefe42005-08-25 12:22:04 -0400175 support it. It is required by several flavors of cpufreq
176 Performance-state drivers.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700177
178config ACPI_HOTPLUG_CPU
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400179 bool
180 depends on ACPI_PROCESSOR && HOTPLUG_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700181 select ACPI_CONTAINER
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400182 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700183
184config ACPI_THERMAL
185 tristate "Thermal Zone"
186 depends on ACPI_PROCESSOR
Len Brown07fefe42005-08-25 12:22:04 -0400187 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700188 help
189 This driver adds support for ACPI thermal zones. Most mobile and
190 some desktop systems support ACPI thermal zones. It is HIGHLY
191 recommended that this option be enabled, as your processor(s)
192 may be damaged without it.
193
194config ACPI_NUMA
195 bool "NUMA support"
196 depends on NUMA
Yasunori Goto762834e2006-06-23 02:03:19 -0700197 depends on (X86 || IA64)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700198 default y if IA64_GENERIC || IA64_SGI_SN2
199
200config ACPI_ASUS
201 tristate "ASUS/Medion Laptop Extras"
202 depends on X86
Holger Macht2039a6e2006-10-20 14:30:29 -0700203 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700204 ---help---
205 This driver provides support for extra features of ACPI-compatible
206 ASUS laptops. As some of Medion laptops are made by ASUS, it may also
207 support some Medion laptops (such as 9675 for example). It makes all
208 the extra buttons generate standard ACPI events that go through
209 /proc/acpi/events, and (on some models) adds support for changing the
210 display brightness and output, switching the LCD backlight on and off,
211 and most importantly, allows you to blink those fancy LEDs intended
212 for reporting mail and wireless status.
213
214 Note: display switching code is currently considered EXPERIMENTAL,
215 toying with these values may even lock your machine.
Corentin Chary85091b72007-01-26 14:04:30 +0100216
Linus Torvalds1da177e2005-04-16 15:20:36 -0700217 All settings are changed via /proc/acpi/asus directory entries. Owner
218 and group for these entries can be set with asus_uid and asus_gid
219 parameters.
Corentin Chary85091b72007-01-26 14:04:30 +0100220
Linus Torvalds1da177e2005-04-16 15:20:36 -0700221 More information and a userspace daemon for handling the extra buttons
222 at <http://sourceforge.net/projects/acpi4asus/>.
Corentin Chary85091b72007-01-26 14:04:30 +0100223
Linus Torvalds1da177e2005-04-16 15:20:36 -0700224 If you have an ACPI-compatible ASUS laptop, say Y or M here. This
225 driver is still under development, so if your laptop is unsupported or
226 something works not quite as expected, please use the mailing list
Corentin Chary85091b72007-01-26 14:04:30 +0100227 available on the above page (acpi4asus-user@lists.sourceforge.net).
228
229 NOTE: This driver is deprecated and will probably be removed soon,
230 use asus-laptop instead.
231
Linus Torvalds1da177e2005-04-16 15:20:36 -0700232config ACPI_TOSHIBA
233 tristate "Toshiba Laptop Extras"
234 depends on X86
Holger Machtc9263552006-10-20 14:30:29 -0700235 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700236 ---help---
237 This driver adds support for access to certain system settings
238 on "legacy free" Toshiba laptops. These laptops can be recognized by
239 their lack of a BIOS setup menu and APM support.
240
241 On these machines, all system configuration is handled through the
242 ACPI. This driver is required for access to controls not covered
243 by the general ACPI drivers, such as LCD brightness, video output,
244 etc.
245
246 This driver differs from the non-ACPI Toshiba laptop driver (located
247 under "Processor type and features") in several aspects.
248 Configuration is accessed by reading and writing text files in the
249 /proc tree instead of by program interface to /dev. Furthermore, no
250 power management functions are exposed, as those are handled by the
251 general ACPI drivers.
252
253 More information about this driver is available at
254 <http://memebeam.org/toys/ToshibaAcpiDriver>.
255
256 If you have a legacy free Toshiba laptop (such as the Libretto L1
257 series), say Y.
258
259config ACPI_CUSTOM_DSDT
260 bool "Include Custom DSDT"
261 depends on !STANDALONE
262 default n
263 help
Matt LaPlantec73a6682006-10-03 22:24:43 +0200264 This option is to load a custom ACPI DSDT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700265 If you don't know what that is, say N.
266
267config ACPI_CUSTOM_DSDT_FILE
268 string "Custom DSDT Table file to include"
269 depends on ACPI_CUSTOM_DSDT
270 default ""
271 help
Uwe Zeisbergerc30fe7f2006-03-24 18:23:14 +0100272 Enter the full path name to the file which includes the AmlCode
273 declaration.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700274
275config ACPI_BLACKLIST_YEAR
Andi Kleen2eb1bdb2006-02-26 04:18:43 +0100276 int "Disable ACPI for systems before Jan 1st this year" if X86_32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700277 default 0
278 help
279 enter a 4-digit year, eg. 2001 to disable ACPI by default
280 on platforms with DMI BIOS date before January 1st that year.
281 "acpi=force" can be used to override this mechanism.
282
283 Enter 0 to disable this mechanism and allow ACPI to
284 run by default no matter what the year. (default)
285
286config ACPI_DEBUG
287 bool "Debug Statements"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700288 default n
289 help
290 The ACPI driver can optionally report errors with a great deal
291 of verbosity. Saying Y enables these statements. This will increase
292 your kernel size by around 50K.
293
Thomas Renninger798d91032007-05-31 17:20:39 +0200294config ACPI_DEBUG_FUNC_TRACE
295 bool "Additionally enable ACPI function tracing"
296 default n
297 depends on ACPI_DEBUG
298 help
299 ACPI Debug Statements slow down ACPI processing. Function trace
300 is about half of the penalty and is rarely useful.
301
Linus Torvalds1da177e2005-04-16 15:20:36 -0700302config ACPI_EC
303 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700304 default y
305 help
306 This driver is required on some systems for the proper operation of
307 the battery and thermal drivers. If you are compiling for a
308 mobile system, say Y.
309
310config ACPI_POWER
311 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700312 default y
313
Linus Torvalds1da177e2005-04-16 15:20:36 -0700314config ACPI_SYSTEM
315 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700316 default y
317 help
318 This driver will enable your system to shut down using ACPI, and
319 dump your ACPI DSDT table using /proc/acpi/dsdt.
320
Linus Torvalds1da177e2005-04-16 15:20:36 -0700321config X86_PM_TIMER
Andi Kleene78256b2006-02-26 04:18:37 +0100322 bool "Power Management Timer Support" if EMBEDDED
Linus Torvalds1da177e2005-04-16 15:20:36 -0700323 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400324 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700325 help
326 The Power Management Timer is available on all ACPI-capable,
327 in most cases even if ACPI is unusable or blacklisted.
328
Matt LaPlantec73a6682006-10-03 22:24:43 +0200329 This timing source is not affected by power management features
Linus Torvalds1da177e2005-04-16 15:20:36 -0700330 like aggressive processor idling, throttling, frequency and/or
331 voltage scaling, unlike the commonly used Time Stamp Counter
332 (TSC) timing source.
333
Andi Kleene78256b2006-02-26 04:18:37 +0100334 You should nearly always say Y here because many modern
335 systems require this timer.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700336
337config ACPI_CONTAINER
338 tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
339 depends on EXPERIMENTAL
340 default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
341 ---help---
Keiichiro Tokunaga45b1b192005-03-02 00:00:00 -0500342 This allows _physical_ insertion and removal of CPUs and memory.
343 This can be useful, for example, on NUMA machines that support
344 ACPI based physical hotplug of nodes, or non-NUMA machines that
345 support physical cpu/memory hot-plug.
346
347 If one selects "m", this driver can be loaded with
348 "modprobe acpi_container".
Linus Torvalds1da177e2005-04-16 15:20:36 -0700349
350config ACPI_HOTPLUG_MEMORY
351 tristate "Memory Hotplug"
Yasunori Gotobc02af92006-06-27 02:53:30 -0700352 depends on MEMORY_HOTPLUG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700353 default n
354 help
355 This driver adds supports for ACPI Memory Hotplug. This driver
356 provides support for fielding notifications on ACPI memory
357 devices (PNP0C80) which represent memory ranges that may be
358 onlined or offlined during runtime.
359
360 Enabling this driver assumes that your platform hardware
361 and firmware have support for hot-plugging physical memory. If
362 your system does not support physically adding or ripping out
Matt LaPlantec73a6682006-10-03 22:24:43 +0200363 memory DIMMs at some platform defined granularity (individually
Linus Torvalds1da177e2005-04-16 15:20:36 -0700364 or as a bank) at runtime, then you need not enable this driver.
365
366 If one selects "m," this driver can be loaded using the following
367 command:
368 $>modprobe acpi_memhotplug
Rich Townsend3f86b832006-07-01 11:36:54 -0400369
370config ACPI_SBS
Alexey Starikovskiy94f6c082007-09-26 19:43:48 +0400371 tristate "Smart Battery System"
Vladimir Lebedevb4150fc2007-03-19 17:45:50 +0300372 depends on X86
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -0400373 select POWER_SUPPLY
Rich Townsend3f86b832006-07-01 11:36:54 -0400374 help
Alexey Starikovskiy94f6c082007-09-26 19:43:48 +0400375 This driver adds support for the Smart Battery System, another
376 type of access to battery information, found on some laptops.
Rich Townsend3f86b832006-07-01 11:36:54 -0400377
Linus Torvalds1da177e2005-04-16 15:20:36 -0700378endif # ACPI