Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
[linux-2.6] / drivers / acpi / Kconfig
1 #
2 # ACPI Configuration
3 #
4
5 menu "ACPI (Advanced Configuration and Power Interface) Support"
6         depends on !X86_VISWS
7         depends on !IA64_HP_SIM
8         depends on IA64 || X86
9
10 config ACPI
11         bool "ACPI Support"
12         depends on IA64 || X86
13         select PM
14         select PCI
15
16         default y
17         ---help---
18           Advanced Configuration and Power Interface (ACPI) support for 
19           Linux requires an ACPI compliant platform (hardware/firmware),
20           and assumes the presence of OS-directed configuration and power
21           management (OSPM) software.  This option will enlarge your 
22           kernel by about 70K.
23
24           Linux ACPI provides a robust functional replacement for several 
25           legacy configuration and power management interfaces, including
26           the Plug-and-Play BIOS specification (PnP BIOS), the 
27           MultiProcessor Specification (MPS), and the Advanced Power 
28           Management (APM) specification.  If both ACPI and APM support 
29           are configured, whichever is loaded first shall be used.
30
31           The ACPI SourceForge project contains the latest source code, 
32           documentation, tools, mailing list subscription, and other 
33           information.  This project is available at:
34           <http://sourceforge.net/projects/acpi>
35
36           Linux support for ACPI is based on Intel Corporation's ACPI
37           Component Architecture (ACPI CA).  For more information see:
38           <http://developer.intel.com/technology/iapc/acpi>
39
40           ACPI is an open industry specification co-developed by Compaq, 
41           Intel, Microsoft, Phoenix, and Toshiba.  The specification is 
42           available at:
43           <http://www.acpi.info>
44
45 if ACPI
46
47 config ACPI_SLEEP
48         bool "Sleep States"
49         depends on X86 && (!SMP || SUSPEND_SMP)
50         depends on PM
51         default y
52         ---help---
53           This option adds support for ACPI suspend states. 
54
55           With this option, you will be able to put the system "to sleep". 
56           Sleep states are low power states for the system and devices. All
57           of the system operating state is saved to either memory or disk
58           (depending on the state), to allow the system to resume operation
59           quickly at your request.
60
61           Although this option sounds really nifty, barely any of the device
62           drivers have been converted to the new driver model and hence few
63           have proper power management support. 
64
65           This option is not recommended for anyone except those doing driver
66           power management development.
67
68 config ACPI_SLEEP_PROC_FS
69         bool
70         depends on ACPI_SLEEP && PROC_FS
71         default y
72
73 config ACPI_SLEEP_PROC_SLEEP
74         bool "/proc/acpi/sleep (deprecated)"
75         depends on ACPI_SLEEP_PROC_FS
76         default n
77         ---help---
78           Create /proc/acpi/sleep
79           Deprecated by /sys/power/state
80
81 config ACPI_AC
82         tristate "AC Adapter"
83         depends on X86
84         default y
85         help
86           This driver adds support for the AC Adapter object, which indicates
87           whether a system is on AC, or not. If you have a system that can
88           switch between A/C and battery, say Y.
89
90 config ACPI_BATTERY
91         tristate "Battery"
92         depends on X86
93         default y
94         help
95           This driver adds support for battery information through
96           /proc/acpi/battery. If you have a mobile system with a battery, 
97           say Y.
98
99 config ACPI_BUTTON
100         tristate "Button"
101         default y
102         help
103           This driver handles events on the power, sleep and lid buttons.
104           A daemon reads /proc/acpi/event and perform user-defined actions
105           such as shutting down the system.  This is necessary for
106           software controlled poweroff.
107
108 config ACPI_VIDEO
109         tristate "Video"
110         depends on X86
111         default y
112         help
113           This driver implement the ACPI Extensions For Display Adapters
114           for integrated graphics devices on motherboard, as specified in
115           ACPI 2.0 Specification, Appendix B, allowing to perform some basic
116           control like defining the video POST device, retrieving EDID information
117           or to setup a video output, etc.
118           Note that this is an ref. implementation only.  It may or may not work
119           for your integrated video device.
120
121 config ACPI_HOTKEY
122         tristate "Generic Hotkey (EXPERIMENTAL)"
123         depends on EXPERIMENTAL
124         depends on X86
125         default n
126         help
127           Experimental consolidated hotkey driver.
128           If you are unsure, say N.
129
130 config ACPI_FAN
131         tristate "Fan"
132         default y
133         help
134           This driver adds support for ACPI fan devices, allowing user-mode 
135           applications to perform basic fan control (on, off, status).
136
137 config ACPI_PROCESSOR
138         tristate "Processor"
139         default y
140         help
141           This driver installs ACPI as the idle handler for Linux, and uses
142           ACPI C2 and C3 processor states to save power, on systems that
143           support it.  It is required by several flavors of cpufreq
144           Performance-state drivers.
145
146 config ACPI_HOTPLUG_CPU
147         bool
148         depends on ACPI_PROCESSOR && HOTPLUG_CPU
149         select ACPI_CONTAINER
150         default y
151
152 config ACPI_THERMAL
153         tristate "Thermal Zone"
154         depends on ACPI_PROCESSOR
155         default y
156         help
157           This driver adds support for ACPI thermal zones.  Most mobile and
158           some desktop systems support ACPI thermal zones.  It is HIGHLY
159           recommended that this option be enabled, as your processor(s)
160           may be damaged without it.
161
162 config ACPI_NUMA
163         bool "NUMA support"
164         depends on NUMA
165         depends on (IA64 || X86_64)
166         default y if IA64_GENERIC || IA64_SGI_SN2
167
168 config ACPI_ASUS
169         tristate "ASUS/Medion Laptop Extras"
170         depends on X86
171         ---help---
172           This driver provides support for extra features of ACPI-compatible
173           ASUS laptops. As some of Medion laptops are made by ASUS, it may also
174           support some Medion laptops (such as 9675 for example).  It makes all
175           the extra buttons generate standard ACPI events that go through
176           /proc/acpi/events, and (on some models) adds support for changing the
177           display brightness and output, switching the LCD backlight on and off,
178           and most importantly, allows you to blink those fancy LEDs intended
179           for reporting mail and wireless status.
180
181           Note: display switching code is currently considered EXPERIMENTAL,
182           toying with these values may even lock your machine.
183           
184           All settings are changed via /proc/acpi/asus directory entries. Owner
185           and group for these entries can be set with asus_uid and asus_gid
186           parameters.
187           
188           More information and a userspace daemon for handling the extra buttons
189           at <http://sourceforge.net/projects/acpi4asus/>.
190           
191           If you have an ACPI-compatible ASUS laptop, say Y or M here. This
192           driver is still under development, so if your laptop is unsupported or
193           something works not quite as expected, please use the mailing list
194           available on the above page (acpi4asus-user@lists.sourceforge.net)
195           
196 config ACPI_IBM
197         tristate "IBM ThinkPad Laptop Extras"
198         depends on X86
199         ---help---
200           This is a Linux ACPI driver for the IBM ThinkPad laptops. It adds
201           support for Fn-Fx key combinations, Bluetooth control, video
202           output switching, ThinkLight control, UltraBay eject and more.
203           For more information about this driver see <file:Documentation/ibm-acpi.txt>
204           and <http://ibm-acpi.sf.net/> .
205
206           If you have an IBM ThinkPad laptop, say Y or M here.
207
208 config ACPI_IBM_DOCK
209         bool "Legacy Docking Station Support"
210         depends on ACPI_IBM
211         default n
212         ---help---
213           Allows the ibm_acpi driver to handle docking station events.
214           This support is obsoleted by CONFIG_HOTPLUG_PCI_ACPI.  It will
215           allow locking and removing the laptop from the docking station,
216           but will not properly connect PCI devices.
217
218           If you are not sure, say N here.
219
220 config ACPI_TOSHIBA
221         tristate "Toshiba Laptop Extras"
222         depends on X86
223         ---help---
224           This driver adds support for access to certain system settings
225           on "legacy free" Toshiba laptops.  These laptops can be recognized by
226           their lack of a BIOS setup menu and APM support.
227
228           On these machines, all system configuration is handled through the
229           ACPI.  This driver is required for access to controls not covered
230           by the general ACPI drivers, such as LCD brightness, video output,
231           etc.
232
233           This driver differs from the non-ACPI Toshiba laptop driver (located
234           under "Processor type and features") in several aspects.
235           Configuration is accessed by reading and writing text files in the
236           /proc tree instead of by program interface to /dev.  Furthermore, no
237           power management functions are exposed, as those are handled by the
238           general ACPI drivers.
239
240           More information about this driver is available at
241           <http://memebeam.org/toys/ToshibaAcpiDriver>.
242
243           If you have a legacy free Toshiba laptop (such as the Libretto L1
244           series), say Y.
245
246 config ACPI_CUSTOM_DSDT
247         bool "Include Custom DSDT"
248         depends on !STANDALONE
249         default n 
250         help
251           Thist option is to load a custom ACPI DSDT
252           If you don't know what that is, say N.
253
254 config ACPI_CUSTOM_DSDT_FILE
255         string "Custom DSDT Table file to include"
256         depends on ACPI_CUSTOM_DSDT
257         default ""
258         help
259           Enter the full path name to the file wich includes the AmlCode declaration.
260
261 config ACPI_BLACKLIST_YEAR
262         int "Disable ACPI for systems before Jan 1st this year" if X86_32
263         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
272 config ACPI_DEBUG
273         bool "Debug Statements"
274         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
280 config ACPI_EC
281         bool
282         default y
283         help
284           This driver is required on some systems for the proper operation of
285           the battery and thermal drivers.  If you are compiling for a 
286           mobile system, say Y.
287
288 config ACPI_POWER
289         bool
290         default y
291
292 config ACPI_SYSTEM
293         bool
294         default y
295         help
296           This driver will enable your system to shut down using ACPI, and
297           dump your ACPI DSDT table using /proc/acpi/dsdt.
298
299 config X86_PM_TIMER
300         bool "Power Management Timer Support" if EMBEDDED
301         depends on X86
302         default y
303         help
304           The Power Management Timer is available on all ACPI-capable,
305           in most cases even if ACPI is unusable or blacklisted.
306
307           This timing source is not affected by powermanagement features
308           like aggressive processor idling, throttling, frequency and/or
309           voltage scaling, unlike the commonly used Time Stamp Counter
310           (TSC) timing source.
311
312           You should nearly always say Y here because many modern
313           systems require this timer. 
314
315 config ACPI_CONTAINER
316         tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
317         depends on EXPERIMENTAL
318         default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
319          ---help---
320           This allows _physical_ insertion and removal of CPUs and memory.
321           This can be useful, for example, on NUMA machines that support
322           ACPI based physical hotplug of nodes, or non-NUMA machines that
323           support physical cpu/memory hot-plug.
324
325           If one selects "m", this driver can be loaded with
326           "modprobe acpi_container".
327
328 config ACPI_HOTPLUG_MEMORY
329         tristate "Memory Hotplug"
330         depends on ACPI
331         depends on MEMORY_HOTPLUG
332         default n
333         help
334           This driver adds supports for ACPI Memory Hotplug.  This driver
335           provides support for fielding notifications on ACPI memory
336           devices (PNP0C80) which represent memory ranges that may be
337           onlined or offlined during runtime.  
338
339           Enabling this driver assumes that your platform hardware
340           and firmware have support for hot-plugging physical memory. If
341           your system does not support physically adding or ripping out 
342           memory DIMMs at some platfrom defined granularity (individually 
343           or as a bank) at runtime, then you need not enable this driver.
344
345           If one selects "m," this driver can be loaded using the following
346           command: 
347                 $>modprobe acpi_memhotplug 
348 endif   # ACPI
349
350 endmenu