blob: 087a7028ae84ece99cd42676a585c43802fa573c [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 Beer405bbe92007-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/
Zhang Ruib981c592007-01-29 11:02:30 +080072
Len Brown14e04fb2007-08-23 15:20:26 -040073config ACPI_PROC_EVENT
74 bool "Deprecated /proc/acpi/event support"
75 depends on PROC_FS
Hugh Dickins721ebe02007-08-27 16:04:39 +010076 default y
Len Brown14e04fb2007-08-23 15:20:26 -040077 ---help---
78 A user-space daemon, acpi, typically read /proc/acpi/event
79 and handled all ACPI sub-system generated events.
80
81 These events are now delivered to user-space via
82 either the input layer, or as netlink events.
83
Hugh Dickins721ebe02007-08-27 16:04:39 +010084 This build option enables the old code for legacy
Len Brown14e04fb2007-08-23 15:20:26 -040085 user-space implementation. After some time, this will
86 be moved under CONFIG_ACPI_PROCFS, and then deleted.
87
Hugh Dickins721ebe02007-08-27 16:04:39 +010088 Say Y here to retain the old behaviour. Say N if your
89 user-space is newer than kernel 2.6.23 (September 2007).
90
Linus Torvalds1da177e2005-04-16 15:20:36 -070091config ACPI_AC
92 tristate "AC Adapter"
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -040093 depends on X86
94 select POWER_SUPPLY
Len Brown07fefe42005-08-25 12:22:04 -040095 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -070096 help
97 This driver adds support for the AC Adapter object, which indicates
Len Brown07fefe42005-08-25 12:22:04 -040098 whether a system is on AC, or not. If you have a system that can
99 switch between A/C and battery, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700100
101config ACPI_BATTERY
102 tristate "Battery"
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -0400103 depends on X86
104 select POWER_SUPPLY
Len Brown07fefe42005-08-25 12:22:04 -0400105 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700106 help
107 This driver adds support for battery information through
108 /proc/acpi/battery. If you have a mobile system with a battery,
109 say Y.
110
111config ACPI_BUTTON
112 tristate "Button"
Dmitry Torokhovc0968f02006-11-09 00:40:13 -0500113 depends on INPUT
Len Brown07fefe42005-08-25 12:22:04 -0400114 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700115 help
Len Brown07fefe42005-08-25 12:22:04 -0400116 This driver handles events on the power, sleep and lid buttons.
117 A daemon reads /proc/acpi/event and perform user-defined actions
118 such as shutting down the system. This is necessary for
119 software controlled poweroff.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700120
121config ACPI_VIDEO
122 tristate "Video"
Luming Yu23b0f012007-05-09 21:07:05 +0800123 depends on X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL
Andreas Herrmann03e2bf22007-09-17 23:41:05 +0200124 depends on INPUT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700125 help
126 This driver implement the ACPI Extensions For Display Adapters
127 for integrated graphics devices on motherboard, as specified in
128 ACPI 2.0 Specification, Appendix B, allowing to perform some basic
129 control like defining the video POST device, retrieving EDID information
130 or to setup a video output, etc.
131 Note that this is an ref. implementation only. It may or may not work
132 for your integrated video device.
133
134config ACPI_FAN
135 tristate "Fan"
Len Brown07fefe42005-08-25 12:22:04 -0400136 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700137 help
138 This driver adds support for ACPI fan devices, allowing user-mode
139 applications to perform basic fan control (on, off, status).
140
Len Brownc8f7a622006-07-09 17:22:28 -0400141config ACPI_DOCK
142 tristate "Dock"
Len Brown8d7bff62006-07-09 22:09:57 -0400143 depends on EXPERIMENTAL
Len Brownc8f7a622006-07-09 17:22:28 -0400144 help
145 This driver adds support for ACPI controlled docking stations
146
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700147config ACPI_BAY
Len Brown0ed1e382007-02-02 22:39:16 -0500148 tristate "Removable Drive Bay (EXPERIMENTAL)"
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700149 depends on EXPERIMENTAL
Kristen Carlson Accardib1a316f2007-02-28 20:13:17 -0800150 depends on ACPI_DOCK
Kristen Carlson Accardi01b57e72006-10-20 14:30:25 -0700151 help
152 This driver adds support for ACPI controlled removable drive
153 bays such as the IBM ultrabay or the Dell Module Bay.
154
Linus Torvalds1da177e2005-04-16 15:20:36 -0700155config ACPI_PROCESSOR
156 tristate "Processor"
Len Brown07fefe42005-08-25 12:22:04 -0400157 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700158 help
159 This driver installs ACPI as the idle handler for Linux, and uses
160 ACPI C2 and C3 processor states to save power, on systems that
Len Brown07fefe42005-08-25 12:22:04 -0400161 support it. It is required by several flavors of cpufreq
162 Performance-state drivers.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700163
164config ACPI_HOTPLUG_CPU
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400165 bool
166 depends on ACPI_PROCESSOR && HOTPLUG_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700167 select ACPI_CONTAINER
Adrian Bunkcbfc1ba2005-07-30 04:18:00 -0400168 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700169
170config ACPI_THERMAL
171 tristate "Thermal Zone"
172 depends on ACPI_PROCESSOR
Len Brown07fefe42005-08-25 12:22:04 -0400173 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700174 help
175 This driver adds support for ACPI thermal zones. Most mobile and
176 some desktop systems support ACPI thermal zones. It is HIGHLY
177 recommended that this option be enabled, as your processor(s)
178 may be damaged without it.
179
180config ACPI_NUMA
181 bool "NUMA support"
182 depends on NUMA
Yasunori Goto762834e2006-06-23 02:03:19 -0700183 depends on (X86 || IA64)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700184 default y if IA64_GENERIC || IA64_SGI_SN2
185
186config ACPI_ASUS
187 tristate "ASUS/Medion Laptop Extras"
188 depends on X86
Holger Macht2039a6e2006-10-20 14:30:29 -0700189 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700190 ---help---
191 This driver provides support for extra features of ACPI-compatible
192 ASUS laptops. As some of Medion laptops are made by ASUS, it may also
193 support some Medion laptops (such as 9675 for example). It makes all
194 the extra buttons generate standard ACPI events that go through
195 /proc/acpi/events, and (on some models) adds support for changing the
196 display brightness and output, switching the LCD backlight on and off,
197 and most importantly, allows you to blink those fancy LEDs intended
198 for reporting mail and wireless status.
199
200 Note: display switching code is currently considered EXPERIMENTAL,
201 toying with these values may even lock your machine.
Corentin Chary85091b72007-01-26 14:04:30 +0100202
Linus Torvalds1da177e2005-04-16 15:20:36 -0700203 All settings are changed via /proc/acpi/asus directory entries. Owner
204 and group for these entries can be set with asus_uid and asus_gid
205 parameters.
Corentin Chary85091b72007-01-26 14:04:30 +0100206
Linus Torvalds1da177e2005-04-16 15:20:36 -0700207 More information and a userspace daemon for handling the extra buttons
208 at <http://sourceforge.net/projects/acpi4asus/>.
Corentin Chary85091b72007-01-26 14:04:30 +0100209
Linus Torvalds1da177e2005-04-16 15:20:36 -0700210 If you have an ACPI-compatible ASUS laptop, say Y or M here. This
211 driver is still under development, so if your laptop is unsupported or
212 something works not quite as expected, please use the mailing list
Corentin Chary85091b72007-01-26 14:04:30 +0100213 available on the above page (acpi4asus-user@lists.sourceforge.net).
214
215 NOTE: This driver is deprecated and will probably be removed soon,
216 use asus-laptop instead.
217
Linus Torvalds1da177e2005-04-16 15:20:36 -0700218config ACPI_TOSHIBA
219 tristate "Toshiba Laptop Extras"
220 depends on X86
Holger Machtc9263552006-10-20 14:30:29 -0700221 select BACKLIGHT_CLASS_DEVICE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700222 ---help---
223 This driver adds support for access to certain system settings
224 on "legacy free" Toshiba laptops. These laptops can be recognized by
225 their lack of a BIOS setup menu and APM support.
226
227 On these machines, all system configuration is handled through the
228 ACPI. This driver is required for access to controls not covered
229 by the general ACPI drivers, such as LCD brightness, video output,
230 etc.
231
232 This driver differs from the non-ACPI Toshiba laptop driver (located
233 under "Processor type and features") in several aspects.
234 Configuration is accessed by reading and writing text files in the
235 /proc tree instead of by program interface to /dev. Furthermore, no
236 power management functions are exposed, as those are handled by the
237 general ACPI drivers.
238
239 More information about this driver is available at
240 <http://memebeam.org/toys/ToshibaAcpiDriver>.
241
242 If you have a legacy free Toshiba laptop (such as the Libretto L1
243 series), say Y.
244
245config ACPI_CUSTOM_DSDT
246 bool "Include Custom DSDT"
247 depends on !STANDALONE
248 default n
249 help
Matt LaPlantec73a6682006-10-03 22:24:43 +0200250 This option is to load a custom ACPI DSDT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700251 If you don't know what that is, say N.
252
253config ACPI_CUSTOM_DSDT_FILE
254 string "Custom DSDT Table file to include"
255 depends on ACPI_CUSTOM_DSDT
256 default ""
257 help
Uwe Zeisbergerc30fe7f2006-03-24 18:23:14 +0100258 Enter the full path name to the file which includes the AmlCode
259 declaration.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700260
261config ACPI_BLACKLIST_YEAR
Andi Kleen2eb1bdb2006-02-26 04:18:43 +0100262 int "Disable ACPI for systems before Jan 1st this year" if X86_32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700263 default 0
264 help
265 enter a 4-digit year, eg. 2001 to disable ACPI by default
266 on platforms with DMI BIOS date before January 1st that year.
267 "acpi=force" can be used to override this mechanism.
268
269 Enter 0 to disable this mechanism and allow ACPI to
270 run by default no matter what the year. (default)
271
272config ACPI_DEBUG
273 bool "Debug Statements"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700274 default n
275 help
276 The ACPI driver can optionally report errors with a great deal
277 of verbosity. Saying Y enables these statements. This will increase
278 your kernel size by around 50K.
279
Thomas Renninger798d91032007-05-31 17:20:39 +0200280config ACPI_DEBUG_FUNC_TRACE
281 bool "Additionally enable ACPI function tracing"
282 default n
283 depends on ACPI_DEBUG
284 help
285 ACPI Debug Statements slow down ACPI processing. Function trace
286 is about half of the penalty and is rarely useful.
287
Linus Torvalds1da177e2005-04-16 15:20:36 -0700288config ACPI_EC
289 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700290 default y
291 help
292 This driver is required on some systems for the proper operation of
293 the battery and thermal drivers. If you are compiling for a
294 mobile system, say Y.
295
296config ACPI_POWER
297 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700298 default y
299
Linus Torvalds1da177e2005-04-16 15:20:36 -0700300config ACPI_SYSTEM
301 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700302 default y
303 help
304 This driver will enable your system to shut down using ACPI, and
305 dump your ACPI DSDT table using /proc/acpi/dsdt.
306
Linus Torvalds1da177e2005-04-16 15:20:36 -0700307config X86_PM_TIMER
Andi Kleene78256b2006-02-26 04:18:37 +0100308 bool "Power Management Timer Support" if EMBEDDED
Linus Torvalds1da177e2005-04-16 15:20:36 -0700309 depends on X86
Len Brown07fefe42005-08-25 12:22:04 -0400310 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700311 help
312 The Power Management Timer is available on all ACPI-capable,
313 in most cases even if ACPI is unusable or blacklisted.
314
Matt LaPlantec73a6682006-10-03 22:24:43 +0200315 This timing source is not affected by power management features
Linus Torvalds1da177e2005-04-16 15:20:36 -0700316 like aggressive processor idling, throttling, frequency and/or
317 voltage scaling, unlike the commonly used Time Stamp Counter
318 (TSC) timing source.
319
Andi Kleene78256b2006-02-26 04:18:37 +0100320 You should nearly always say Y here because many modern
321 systems require this timer.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700322
323config ACPI_CONTAINER
324 tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
325 depends on EXPERIMENTAL
326 default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
327 ---help---
Keiichiro Tokunaga45b1b192005-03-02 00:00:00 -0500328 This allows _physical_ insertion and removal of CPUs and memory.
329 This can be useful, for example, on NUMA machines that support
330 ACPI based physical hotplug of nodes, or non-NUMA machines that
331 support physical cpu/memory hot-plug.
332
333 If one selects "m", this driver can be loaded with
334 "modprobe acpi_container".
Linus Torvalds1da177e2005-04-16 15:20:36 -0700335
336config ACPI_HOTPLUG_MEMORY
337 tristate "Memory Hotplug"
Yasunori Gotobc02af92006-06-27 02:53:30 -0700338 depends on MEMORY_HOTPLUG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700339 default n
340 help
341 This driver adds supports for ACPI Memory Hotplug. This driver
342 provides support for fielding notifications on ACPI memory
343 devices (PNP0C80) which represent memory ranges that may be
344 onlined or offlined during runtime.
345
346 Enabling this driver assumes that your platform hardware
347 and firmware have support for hot-plugging physical memory. If
348 your system does not support physically adding or ripping out
Matt LaPlantec73a6682006-10-03 22:24:43 +0200349 memory DIMMs at some platform defined granularity (individually
Linus Torvalds1da177e2005-04-16 15:20:36 -0700350 or as a bank) at runtime, then you need not enable this driver.
351
352 If one selects "m," this driver can be loaded using the following
353 command:
354 $>modprobe acpi_memhotplug
Rich Townsend3f86b832006-07-01 11:36:54 -0400355
356config ACPI_SBS
Alexey Starikovskiy94f6c082007-09-26 19:43:48 +0400357 tristate "Smart Battery System"
Vladimir Lebedevb4150fc2007-03-19 17:45:50 +0300358 depends on X86
Alexey Starikovskiy5527c8b2007-10-29 17:08:59 -0400359 select POWER_SUPPLY
Rich Townsend3f86b832006-07-01 11:36:54 -0400360 help
Alexey Starikovskiy94f6c082007-09-26 19:43:48 +0400361 This driver adds support for the Smart Battery System, another
362 type of access to battery information, found on some laptops.
Rich Townsend3f86b832006-07-01 11:36:54 -0400363
Linus Torvalds1da177e2005-04-16 15:20:36 -0700364endif # ACPI