Merge branches 'release' and 'wmi-2.6.25' into release
[linux-2.6.git] / drivers / acpi / Kconfig
1 #
2 # ACPI Configuration
3 #
4
5 menuconfig ACPI
6         bool "ACPI (Advanced Configuration and Power Interface) Support"
7         depends on !X86_NUMAQ
8         depends on !X86_VISWS
9         depends on !IA64_HP_SIM
10         depends on IA64 || X86
11         depends on PCI
12         depends on PM
13         select PNP
14         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
43 if ACPI
44
45 config ACPI_SLEEP
46         bool
47         depends on PM_SLEEP
48         default y
49
50 config ACPI_PROCFS
51         bool "Deprecated /proc/acpi files"
52         depends on PROC_FS
53         ---help---
54           For backwards compatibility, this option allows
55           deprecated /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
59           /proc/acpi/sleep (/sys/power/state)
60           /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/
70 config 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
83
84           Say N to delete power /proc/acpi/ folders that have moved to /sys/
85 config 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
91 config ACPI_PROC_EVENT
92         bool "Deprecated /proc/acpi/event support"
93         depends on PROC_FS
94         default y
95         ---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
102           This build option enables the old code for legacy
103           user-space implementation.  After some time, this will
104           be moved under CONFIG_ACPI_PROCFS, and then deleted.
105
106           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
109 config ACPI_AC
110         tristate "AC Adapter"
111         depends on X86
112         default y
113         help
114           This driver adds support for the AC Adapter object, which indicates
115           whether a system is on AC, or not. If you have a system that can
116           switch between A/C and battery, say Y.
117
118 config ACPI_BATTERY
119         tristate "Battery"
120         depends on X86
121         default y
122         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
127 config ACPI_BUTTON
128         tristate "Button"
129         depends on INPUT
130         default y
131         help
132           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.
136
137 config ACPI_VIDEO
138         tristate "Video"
139         depends on X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL
140         depends on INPUT
141         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
150 config ACPI_FAN
151         tristate "Fan"
152         default y
153         help
154           This driver adds support for ACPI fan devices, allowing user-mode 
155           applications to perform basic fan control (on, off, status).
156
157 config ACPI_DOCK
158         tristate "Dock"
159         depends on EXPERIMENTAL
160         help
161           This driver adds support for ACPI controlled docking stations
162
163 config ACPI_BAY
164         tristate "Removable Drive Bay (EXPERIMENTAL)"
165         depends on EXPERIMENTAL
166         depends on ACPI_DOCK
167         help
168           This driver adds support for ACPI controlled removable drive
169           bays such as the IBM ultrabay or the Dell Module Bay.
170
171 config ACPI_PROCESSOR
172         tristate "Processor"
173         default y
174         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
177           support it.  It is required by several flavors of cpufreq
178           Performance-state drivers.
179
180 config ACPI_HOTPLUG_CPU
181         bool
182         depends on ACPI_PROCESSOR && HOTPLUG_CPU
183         select ACPI_CONTAINER
184         default y
185
186 config ACPI_THERMAL
187         tristate "Thermal Zone"
188         depends on ACPI_PROCESSOR
189         select THERMAL
190         default y
191         help
192           This driver adds support for ACPI thermal zones.  Most mobile and
193           some desktop systems support ACPI thermal zones.  It is HIGHLY
194           recommended that this option be enabled, as your processor(s)
195           may be damaged without it.
196
197 config ACPI_NUMA
198         bool "NUMA support"
199         depends on NUMA
200         depends on (X86 || IA64)
201         default y if IA64_GENERIC || IA64_SGI_SN2
202
203 config ACPI_WMI
204         tristate "WMI (EXPERIMENTAL)"
205         depends on EXPERIMENTAL
206         help
207           This driver adds support for the ACPI-WMI mapper device (PNP0C14)
208           found on some systems.
209
210           NOTE: You will need another driver or userspace application on top of
211           this to actually use anything defined in the ACPI-WMI mapper.
212
213 config ACPI_ASUS
214         tristate "ASUS/Medion Laptop Extras"
215         depends on X86
216         select BACKLIGHT_CLASS_DEVICE
217         ---help---
218           This driver provides support for extra features of ACPI-compatible
219           ASUS laptops. As some of Medion laptops are made by ASUS, it may also
220           support some Medion laptops (such as 9675 for example).  It makes all
221           the extra buttons generate standard ACPI events that go through
222           /proc/acpi/events, and (on some models) adds support for changing the
223           display brightness and output, switching the LCD backlight on and off,
224           and most importantly, allows you to blink those fancy LEDs intended
225           for reporting mail and wireless status.
226
227           Note: display switching code is currently considered EXPERIMENTAL,
228           toying with these values may even lock your machine.
229
230           All settings are changed via /proc/acpi/asus directory entries. Owner
231           and group for these entries can be set with asus_uid and asus_gid
232           parameters.
233
234           More information and a userspace daemon for handling the extra buttons
235           at <http://sourceforge.net/projects/acpi4asus/>.
236
237           If you have an ACPI-compatible ASUS laptop, say Y or M here. This
238           driver is still under development, so if your laptop is unsupported or
239           something works not quite as expected, please use the mailing list
240           available on the above page (acpi4asus-user@lists.sourceforge.net).
241
242           NOTE: This driver is deprecated and will probably be removed soon,
243           use asus-laptop instead.
244
245 config ACPI_TOSHIBA
246         tristate "Toshiba Laptop Extras"
247         depends on X86
248         select BACKLIGHT_CLASS_DEVICE
249         ---help---
250           This driver adds support for access to certain system settings
251           on "legacy free" Toshiba laptops.  These laptops can be recognized by
252           their lack of a BIOS setup menu and APM support.
253
254           On these machines, all system configuration is handled through the
255           ACPI.  This driver is required for access to controls not covered
256           by the general ACPI drivers, such as LCD brightness, video output,
257           etc.
258
259           This driver differs from the non-ACPI Toshiba laptop driver (located
260           under "Processor type and features") in several aspects.
261           Configuration is accessed by reading and writing text files in the
262           /proc tree instead of by program interface to /dev.  Furthermore, no
263           power management functions are exposed, as those are handled by the
264           general ACPI drivers.
265
266           More information about this driver is available at
267           <http://memebeam.org/toys/ToshibaAcpiDriver>.
268
269           If you have a legacy free Toshiba laptop (such as the Libretto L1
270           series), say Y.
271
272 config ACPI_CUSTOM_DSDT
273         bool "Include Custom DSDT"
274         depends on !STANDALONE
275         default n 
276         help
277           This option is to load a custom ACPI DSDT
278           If you don't know what that is, say N.
279
280 config ACPI_CUSTOM_DSDT_FILE
281         string "Custom DSDT Table file to include"
282         depends on ACPI_CUSTOM_DSDT
283         default ""
284         help
285           Enter the full path name to the file which includes the AmlCode
286           declaration.
287
288 config ACPI_BLACKLIST_YEAR
289         int "Disable ACPI for systems before Jan 1st this year" if X86_32
290         default 0
291         help
292           enter a 4-digit year, eg. 2001 to disable ACPI by default
293           on platforms with DMI BIOS date before January 1st that year.
294           "acpi=force" can be used to override this mechanism.
295
296           Enter 0 to disable this mechanism and allow ACPI to
297           run by default no matter what the year.  (default)
298
299 config ACPI_DEBUG
300         bool "Debug Statements"
301         default n
302         help
303           The ACPI driver can optionally report errors with a great deal
304           of verbosity. Saying Y enables these statements. This will increase
305           your kernel size by around 50K.
306
307 config ACPI_DEBUG_FUNC_TRACE
308         bool "Additionally enable ACPI function tracing"
309         default n
310         depends on ACPI_DEBUG
311         help
312           ACPI Debug Statements slow down ACPI processing. Function trace
313           is about half of the penalty and is rarely useful.
314
315 config ACPI_EC
316         bool
317         default y
318         help
319           This driver is required on some systems for the proper operation of
320           the battery and thermal drivers.  If you are compiling for a 
321           mobile system, say Y.
322
323 config ACPI_POWER
324         bool
325         default y
326
327 config ACPI_SYSTEM
328         bool
329         default y
330         help
331           This driver will enable your system to shut down using ACPI, and
332           dump your ACPI DSDT table using /proc/acpi/dsdt.
333
334 config X86_PM_TIMER
335         bool "Power Management Timer Support" if EMBEDDED
336         depends on X86
337         default y
338         help
339           The Power Management Timer is available on all ACPI-capable,
340           in most cases even if ACPI is unusable or blacklisted.
341
342           This timing source is not affected by power management features
343           like aggressive processor idling, throttling, frequency and/or
344           voltage scaling, unlike the commonly used Time Stamp Counter
345           (TSC) timing source.
346
347           You should nearly always say Y here because many modern
348           systems require this timer. 
349
350 config ACPI_CONTAINER
351         tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
352         depends on EXPERIMENTAL
353         default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
354          ---help---
355           This allows _physical_ insertion and removal of CPUs and memory.
356           This can be useful, for example, on NUMA machines that support
357           ACPI based physical hotplug of nodes, or non-NUMA machines that
358           support physical cpu/memory hot-plug.
359
360           If one selects "m", this driver can be loaded with
361           "modprobe acpi_container".
362
363 config ACPI_HOTPLUG_MEMORY
364         tristate "Memory Hotplug"
365         depends on MEMORY_HOTPLUG
366         default n
367         help
368           This driver adds supports for ACPI Memory Hotplug.  This driver
369           provides support for fielding notifications on ACPI memory
370           devices (PNP0C80) which represent memory ranges that may be
371           onlined or offlined during runtime.  
372
373           Enabling this driver assumes that your platform hardware
374           and firmware have support for hot-plugging physical memory. If
375           your system does not support physically adding or ripping out 
376           memory DIMMs at some platform defined granularity (individually 
377           or as a bank) at runtime, then you need not enable this driver.
378
379           If one selects "m," this driver can be loaded using the following
380           command: 
381                 $>modprobe acpi_memhotplug 
382
383 config ACPI_SBS
384         tristate "Smart Battery System"
385         depends on X86
386         help
387           This driver adds support for the Smart Battery System, another
388           type of access to battery information, found on some laptops.
389
390 endif   # ACPI