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