blob: 4875f0149eb48c499461bf4fce570f7580ec1034 [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
6 bool "ACPI Support (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
55 depricated /proc/acpi/ files to exist, even when
56 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/
Zhang Ruib981c592007-01-29 11:02:30 +080070
Len Brown14e04fb2007-08-23 15:20:26 -040071config ACPI_PROC_EVENT
72 bool "Deprecated /proc/acpi/event support"
73 depends on PROC_FS
Hugh Dickins721ebe02007-08-27 16:04:39 +010074 default y
Len Brown14e04fb2007-08-23 15:20:26 -040075 ---help---
76 A user-space daemon, acpi, typically read /proc/acpi/event
77 and handled all ACPI sub-system generated events.
78
79 These events are now delivered to user-space via
80 either the input layer, or as netlink events.
81
Hugh Dickins721ebe02007-08-27 16:04:39 +010082 This build option enables the old code for legacy
Len Brown14e04fb2007-08-23 15:20:26 -040083 user-space implementation. After some time, this will
84 be moved under CONFIG_ACPI_PROCFS, and then deleted.
85
Hugh Dickins721ebe02007-08-27 16:04:39 +010086 Say Y here to retain the old behaviour. Say N if your
87 user-space is newer than kernel 2.6.23 (September 2007).
88
Linus Torvalds1da177e2005-04-16 15:20:36 -070089config ACPI_AC
90 tristate "AC Adapter"
91 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -040092 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -070093 help
94 This driver adds support for the AC Adapter object, which indicates
Len Brown07fefe42005-08-25 12:22:04 -040095 whether a system is on AC, or not. If you have a system that can
96 switch between A/C and battery, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -070097
98config ACPI_BATTERY
99 tristate "Battery"
100 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400101 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700102 help
103 This driver adds support for battery information through
104 /proc/acpi/battery. If you have a mobile system with a battery,
105 say Y.
106
107config ACPI_BUTTON
108 tristate "Button"
Dmitry Torokhovc0968f02006-11-09 00:40:13 -0500109 depends on INPUT
Len Brown07fefe42005-08-25 12:22:04 -0400110 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700111 help
Len Brown07fefe42005-08-25 12:22:04 -0400112 This driver handles events on the power, sleep and lid buttons.
113 A daemon reads /proc/acpi/event and perform user-defined actions
114 such as shutting down the system. This is necessary for
115 software controlled poweroff.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700116
117config ACPI_VIDEO
118 tristate "Video"
Luming Yu23b0f012007-05-09 21:07:05 +0800119 depends on X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700120 help
121 This driver implement the ACPI Extensions For Display Adapters
122 for integrated graphics devices on motherboard, as specified in
123 ACPI 2.0 Specification, Appendix B, allowing to perform some basic
124 control like defining the video POST device, retrieving EDID information
125 or to setup a video output, etc.
126 Note that this is an ref. implementation only. It may or may not work
127 for your integrated video device.
128
129config ACPI_FAN
130 tristate "Fan"
Len Brown07fefe42005-08-25 12:22:04 -0400131 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700132 help
133 This driver adds support for ACPI fan devices, allowing user-mode
134 applications to perform basic fan control (on, off, status).
135
Len Brownc8f7a622006-07-09 17:22:28 -0400136config ACPI_DOCK
137 tristate "Dock"
Len Brown8d7bff62006-07-09 22:09:57 -0400138 depends on EXPERIMENTAL
Len Brownc8f7a622006-07-09 17:22:28 -0400139 help
140 This driver adds support for ACPI controlled docking stations
141
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700142config ACPI_BAY
Len Brown0ed1e382007-02-02 22:39:16 -0500143 tristate "Removable Drive Bay (EXPERIMENTAL)"
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700144 depends on EXPERIMENTAL
Kristen Carlson Accardib1a316f2007-02-28 20:13:17 -0800145 depends on ACPI_DOCK
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700146 help
147 This driver adds support for ACPI controlled removable drive
148 bays such as the IBM ultrabay or the Dell Module Bay.
149
Linus Torvalds1da177e2005-04-16 15:20:36 -0700150config ACPI_PROCESSOR
151 tristate "Processor"
Len Brown07fefe42005-08-25 12:22:04 -0400152 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700153 help
154 This driver installs ACPI as the idle handler for Linux, and uses
155 ACPI C2 and C3 processor states to save power, on systems that
Len Brown07fefe42005-08-25 12:22:04 -0400156 support it. It is required by several flavors of cpufreq
157 Performance-state drivers.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700158
159config ACPI_HOTPLUG_CPU
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400160 bool
161 depends on ACPI_PROCESSOR && HOTPLUG_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700162 select ACPI_CONTAINER
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400163 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700164
165config ACPI_THERMAL
166 tristate "Thermal Zone"
167 depends on ACPI_PROCESSOR
Len Brown07fefe42005-08-25 12:22:04 -0400168 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700169 help
170 This driver adds support for ACPI thermal zones. Most mobile and
171 some desktop systems support ACPI thermal zones. It is HIGHLY
172 recommended that this option be enabled, as your processor(s)
173 may be damaged without it.
174
175config ACPI_NUMA
176 bool "NUMA support"
177 depends on NUMA
Yasunori Goto762834e2006-06-23 02:03:19 -0700178 depends on (X86 || IA64)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700179 default y if IA64_GENERIC || IA64_SGI_SN2
180
181config ACPI_ASUS
182 tristate "ASUS/Medion Laptop Extras"
183 depends on X86
Holger Macht2039a6e2006-10-20 14:30:29 -0700184 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700185 ---help---
186 This driver provides support for extra features of ACPI-compatible
187 ASUS laptops. As some of Medion laptops are made by ASUS, it may also
188 support some Medion laptops (such as 9675 for example). It makes all
189 the extra buttons generate standard ACPI events that go through
190 /proc/acpi/events, and (on some models) adds support for changing the
191 display brightness and output, switching the LCD backlight on and off,
192 and most importantly, allows you to blink those fancy LEDs intended
193 for reporting mail and wireless status.
194
195 Note: display switching code is currently considered EXPERIMENTAL,
196 toying with these values may even lock your machine.
Corentin Chary85091b72007-01-26 14:04:30 +0100197
Linus Torvalds1da177e2005-04-16 15:20:36 -0700198 All settings are changed via /proc/acpi/asus directory entries. Owner
199 and group for these entries can be set with asus_uid and asus_gid
200 parameters.
Corentin Chary85091b72007-01-26 14:04:30 +0100201
Linus Torvalds1da177e2005-04-16 15:20:36 -0700202 More information and a userspace daemon for handling the extra buttons
203 at <http://sourceforge.net/projects/acpi4asus/>.
Corentin Chary85091b72007-01-26 14:04:30 +0100204
Linus Torvalds1da177e2005-04-16 15:20:36 -0700205 If you have an ACPI-compatible ASUS laptop, say Y or M here. This
206 driver is still under development, so if your laptop is unsupported or
207 something works not quite as expected, please use the mailing list
Corentin Chary85091b72007-01-26 14:04:30 +0100208 available on the above page (acpi4asus-user@lists.sourceforge.net).
209
210 NOTE: This driver is deprecated and will probably be removed soon,
211 use asus-laptop instead.
212
Linus Torvalds1da177e2005-04-16 15:20:36 -0700213config ACPI_TOSHIBA
214 tristate "Toshiba Laptop Extras"
215 depends on X86
Holger Machtc9263552006-10-20 14:30:29 -0700216 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700217 ---help---
218 This driver adds support for access to certain system settings
219 on "legacy free" Toshiba laptops. These laptops can be recognized by
220 their lack of a BIOS setup menu and APM support.
221
222 On these machines, all system configuration is handled through the
223 ACPI. This driver is required for access to controls not covered
224 by the general ACPI drivers, such as LCD brightness, video output,
225 etc.
226
227 This driver differs from the non-ACPI Toshiba laptop driver (located
228 under "Processor type and features") in several aspects.
229 Configuration is accessed by reading and writing text files in the
230 /proc tree instead of by program interface to /dev. Furthermore, no
231 power management functions are exposed, as those are handled by the
232 general ACPI drivers.
233
234 More information about this driver is available at
235 <http://memebeam.org/toys/ToshibaAcpiDriver>.
236
237 If you have a legacy free Toshiba laptop (such as the Libretto L1
238 series), say Y.
239
240config ACPI_CUSTOM_DSDT
241 bool "Include Custom DSDT"
242 depends on !STANDALONE
243 default n
244 help
Matt LaPlantec73a6682006-10-03 22:24:43 +0200245 This option is to load a custom ACPI DSDT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700246 If you don't know what that is, say N.
247
248config ACPI_CUSTOM_DSDT_FILE
249 string "Custom DSDT Table file to include"
250 depends on ACPI_CUSTOM_DSDT
251 default ""
252 help
Uwe Zeisbergerc30fe7f2006-03-24 18:23:14 +0100253 Enter the full path name to the file which includes the AmlCode
254 declaration.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700255
256config ACPI_BLACKLIST_YEAR
Andi Kleen2eb1bdb2006-02-26 04:18:43 +0100257 int "Disable ACPI for systems before Jan 1st this year" if X86_32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700258 default 0
259 help
260 enter a 4-digit year, eg. 2001 to disable ACPI by default
261 on platforms with DMI BIOS date before January 1st that year.
262 "acpi=force" can be used to override this mechanism.
263
264 Enter 0 to disable this mechanism and allow ACPI to
265 run by default no matter what the year. (default)
266
267config ACPI_DEBUG
268 bool "Debug Statements"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700269 default n
270 help
271 The ACPI driver can optionally report errors with a great deal
272 of verbosity. Saying Y enables these statements. This will increase
273 your kernel size by around 50K.
274
Thomas Renninger798d91032007-05-31 17:20:39 +0200275config ACPI_DEBUG_FUNC_TRACE
276 bool "Additionally enable ACPI function tracing"
277 default n
278 depends on ACPI_DEBUG
279 help
280 ACPI Debug Statements slow down ACPI processing. Function trace
281 is about half of the penalty and is rarely useful.
282
Linus Torvalds1da177e2005-04-16 15:20:36 -0700283config ACPI_EC
284 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700285 default y
286 help
287 This driver is required on some systems for the proper operation of
288 the battery and thermal drivers. If you are compiling for a
289 mobile system, say Y.
290
291config ACPI_POWER
292 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700293 default y
294
Linus Torvalds1da177e2005-04-16 15:20:36 -0700295config ACPI_SYSTEM
296 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700297 default y
298 help
299 This driver will enable your system to shut down using ACPI, and
300 dump your ACPI DSDT table using /proc/acpi/dsdt.
301
Linus Torvalds1da177e2005-04-16 15:20:36 -0700302config X86_PM_TIMER
Andi Kleene78256b2006-02-26 04:18:37 +0100303 bool "Power Management Timer Support" if EMBEDDED
Linus Torvalds1da177e2005-04-16 15:20:36 -0700304 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400305 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700306 help
307 The Power Management Timer is available on all ACPI-capable,
308 in most cases even if ACPI is unusable or blacklisted.
309
Matt LaPlantec73a6682006-10-03 22:24:43 +0200310 This timing source is not affected by power management features
Linus Torvalds1da177e2005-04-16 15:20:36 -0700311 like aggressive processor idling, throttling, frequency and/or
312 voltage scaling, unlike the commonly used Time Stamp Counter
313 (TSC) timing source.
314
Andi Kleene78256b2006-02-26 04:18:37 +0100315 You should nearly always say Y here because many modern
316 systems require this timer.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700317
318config ACPI_CONTAINER
319 tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
320 depends on EXPERIMENTAL
321 default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
322 ---help---
Keiichiro Tokunaga45b1b192005-03-02 00:00:00 -0500323 This allows _physical_ insertion and removal of CPUs and memory.
324 This can be useful, for example, on NUMA machines that support
325 ACPI based physical hotplug of nodes, or non-NUMA machines that
326 support physical cpu/memory hot-plug.
327
328 If one selects "m", this driver can be loaded with
329 "modprobe acpi_container".
Linus Torvalds1da177e2005-04-16 15:20:36 -0700330
331config ACPI_HOTPLUG_MEMORY
332 tristate "Memory Hotplug"
Yasunori Gotobc02af92006-06-27 02:53:30 -0700333 depends on MEMORY_HOTPLUG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700334 default n
335 help
336 This driver adds supports for ACPI Memory Hotplug. This driver
337 provides support for fielding notifications on ACPI memory
338 devices (PNP0C80) which represent memory ranges that may be
339 onlined or offlined during runtime.
340
341 Enabling this driver assumes that your platform hardware
342 and firmware have support for hot-plugging physical memory. If
343 your system does not support physically adding or ripping out
Matt LaPlantec73a6682006-10-03 22:24:43 +0200344 memory DIMMs at some platform defined granularity (individually
Linus Torvalds1da177e2005-04-16 15:20:36 -0700345 or as a bank) at runtime, then you need not enable this driver.
346
347 If one selects "m," this driver can be loaded using the following
348 command:
349 $>modprobe acpi_memhotplug
Rich Townsend3f86b832006-07-01 11:36:54 -0400350
351config ACPI_SBS
352 tristate "Smart Battery System (EXPERIMENTAL)"
Vladimir Lebedevb4150fc2007-03-19 17:45:50 +0300353 depends on X86
Rich Townsend3f86b832006-07-01 11:36:54 -0400354 depends on EXPERIMENTAL
Rich Townsend3f86b832006-07-01 11:36:54 -0400355 help
356 This driver adds support for the Smart Battery System.
Rich Townsend3f86b832006-07-01 11:36:54 -0400357 A "Smart Battery" is quite old and quite rare compared
358 to today's ACPI "Control Method" battery.
359
Linus Torvalds1da177e2005-04-16 15:20:36 -0700360endif # ACPI