ACPI: Use menuconfig objects
[linux-2.6.git] / drivers / acpi / Kconfig
1 #
2 # ACPI Configuration
3 #
4
5 menuconfig ACPI
6         bool "ACPI Support (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 "Sleep States"
47         depends on X86 && (!SMP || SUSPEND_SMP)
48         default y
49         ---help---
50           This option adds support for ACPI suspend states. 
51
52           With this option, you will be able to put the system "to sleep". 
53           Sleep states are low power states for the system and devices. All
54           of the system operating state is saved to either memory or disk
55           (depending on the state), to allow the system to resume operation
56           quickly at your request.
57
58           Although this option sounds really nifty, barely any of the device
59           drivers have been converted to the new driver model and hence few
60           have proper power management support. 
61
62           This option is not recommended for anyone except those doing driver
63           power management development.
64
65 config ACPI_SLEEP_PROC_FS
66         bool
67         depends on ACPI_SLEEP && PROC_FS
68         default y
69
70 config ACPI_SLEEP_PROC_SLEEP
71         bool "/proc/acpi/sleep (deprecated)"
72         depends on ACPI_SLEEP_PROC_FS
73         default n
74         ---help---
75           Create /proc/acpi/sleep
76           Deprecated by /sys/power/state
77
78 config ACPI_PROCFS
79         bool "Procfs interface (deprecated)"
80         default y
81         ---help---
82           The Procfs interface for ACPI is made optional for backward compatibility.
83           As the same functions are duplicated in the sysfs interface
84           and this proc interface will be removed some time later,
85           it's marked as deprecated.
86           ( /proc/acpi/debug_layer && debug_level are deprecated by
87             /sys/module/acpi/parameters/debug_layer && debug_level.
88             /proc/acpi/info is deprecated by
89             /sys/module/acpi/parameters/acpica_version )
90
91 config ACPI_AC
92         tristate "AC Adapter"
93         depends on X86
94         default y
95         help
96           This driver adds support for the AC Adapter object, which indicates
97           whether a system is on AC, or not. If you have a system that can
98           switch between A/C and battery, say Y.
99
100 config ACPI_BATTERY
101         tristate "Battery"
102         depends on X86
103         default y
104         help
105           This driver adds support for battery information through
106           /proc/acpi/battery. If you have a mobile system with a battery, 
107           say Y.
108
109 config ACPI_BUTTON
110         tristate "Button"
111         depends on INPUT
112         default y
113         help
114           This driver handles events on the power, sleep and lid buttons.
115           A daemon reads /proc/acpi/event and perform user-defined actions
116           such as shutting down the system.  This is necessary for
117           software controlled poweroff.
118
119 config ACPI_VIDEO
120         tristate "Video"
121         depends on X86 && BACKLIGHT_CLASS_DEVICE
122         help
123           This driver implement the ACPI Extensions For Display Adapters
124           for integrated graphics devices on motherboard, as specified in
125           ACPI 2.0 Specification, Appendix B, allowing to perform some basic
126           control like defining the video POST device, retrieving EDID information
127           or to setup a video output, etc.
128           Note that this is an ref. implementation only.  It may or may not work
129           for your integrated video device.
130
131 config ACPI_FAN
132         tristate "Fan"
133         default y
134         help
135           This driver adds support for ACPI fan devices, allowing user-mode 
136           applications to perform basic fan control (on, off, status).
137
138 config ACPI_DOCK
139         tristate "Dock"
140         depends on EXPERIMENTAL
141         help
142           This driver adds support for ACPI controlled docking stations
143
144 config ACPI_BAY
145         tristate "Removable Drive Bay (EXPERIMENTAL)"
146         depends on EXPERIMENTAL
147         depends on ACPI_DOCK
148         help
149           This driver adds support for ACPI controlled removable drive
150           bays such as the IBM ultrabay or the Dell Module Bay.
151
152 config ACPI_PROCESSOR
153         tristate "Processor"
154         default y
155         help
156           This driver installs ACPI as the idle handler for Linux, and uses
157           ACPI C2 and C3 processor states to save power, on systems that
158           support it.  It is required by several flavors of cpufreq
159           Performance-state drivers.
160
161 config ACPI_HOTPLUG_CPU
162         bool
163         depends on ACPI_PROCESSOR && HOTPLUG_CPU
164         select ACPI_CONTAINER
165         default y
166
167 config ACPI_THERMAL
168         tristate "Thermal Zone"
169         depends on ACPI_PROCESSOR
170         default y
171         help
172           This driver adds support for ACPI thermal zones.  Most mobile and
173           some desktop systems support ACPI thermal zones.  It is HIGHLY
174           recommended that this option be enabled, as your processor(s)
175           may be damaged without it.
176
177 config ACPI_NUMA
178         bool "NUMA support"
179         depends on NUMA
180         depends on (X86 || IA64)
181         default y if IA64_GENERIC || IA64_SGI_SN2
182
183 config ACPI_ASUS
184         tristate "ASUS/Medion Laptop Extras"
185         depends on X86
186         select BACKLIGHT_CLASS_DEVICE
187         ---help---
188           This driver provides support for extra features of ACPI-compatible
189           ASUS laptops. As some of Medion laptops are made by ASUS, it may also
190           support some Medion laptops (such as 9675 for example).  It makes all
191           the extra buttons generate standard ACPI events that go through
192           /proc/acpi/events, and (on some models) adds support for changing the
193           display brightness and output, switching the LCD backlight on and off,
194           and most importantly, allows you to blink those fancy LEDs intended
195           for reporting mail and wireless status.
196
197           Note: display switching code is currently considered EXPERIMENTAL,
198           toying with these values may even lock your machine.
199
200           All settings are changed via /proc/acpi/asus directory entries. Owner
201           and group for these entries can be set with asus_uid and asus_gid
202           parameters.
203
204           More information and a userspace daemon for handling the extra buttons
205           at <http://sourceforge.net/projects/acpi4asus/>.
206
207           If you have an ACPI-compatible ASUS laptop, say Y or M here. This
208           driver is still under development, so if your laptop is unsupported or
209           something works not quite as expected, please use the mailing list
210           available on the above page (acpi4asus-user@lists.sourceforge.net).
211
212           NOTE: This driver is deprecated and will probably be removed soon,
213           use asus-laptop instead.
214
215 config ACPI_TOSHIBA
216         tristate "Toshiba Laptop Extras"
217         depends on X86
218         select BACKLIGHT_CLASS_DEVICE
219         ---help---
220           This driver adds support for access to certain system settings
221           on "legacy free" Toshiba laptops.  These laptops can be recognized by
222           their lack of a BIOS setup menu and APM support.
223
224           On these machines, all system configuration is handled through the
225           ACPI.  This driver is required for access to controls not covered
226           by the general ACPI drivers, such as LCD brightness, video output,
227           etc.
228
229           This driver differs from the non-ACPI Toshiba laptop driver (located
230           under "Processor type and features") in several aspects.
231           Configuration is accessed by reading and writing text files in the
232           /proc tree instead of by program interface to /dev.  Furthermore, no
233           power management functions are exposed, as those are handled by the
234           general ACPI drivers.
235
236           More information about this driver is available at
237           <http://memebeam.org/toys/ToshibaAcpiDriver>.
238
239           If you have a legacy free Toshiba laptop (such as the Libretto L1
240           series), say Y.
241
242 config ACPI_CUSTOM_DSDT
243         bool "Include Custom DSDT"
244         depends on !STANDALONE
245         default n 
246         help
247           This option is to load a custom ACPI DSDT
248           If you don't know what that is, say N.
249
250 config ACPI_CUSTOM_DSDT_FILE
251         string "Custom DSDT Table file to include"
252         depends on ACPI_CUSTOM_DSDT
253         default ""
254         help
255           Enter the full path name to the file which includes the AmlCode
256           declaration.
257
258 config ACPI_BLACKLIST_YEAR
259         int "Disable ACPI for systems before Jan 1st this year" if X86_32
260         default 0
261         help
262           enter a 4-digit year, eg. 2001 to disable ACPI by default
263           on platforms with DMI BIOS date before January 1st that year.
264           "acpi=force" can be used to override this mechanism.
265
266           Enter 0 to disable this mechanism and allow ACPI to
267           run by default no matter what the year.  (default)
268
269 config ACPI_DEBUG
270         bool "Debug Statements"
271         default n
272         help
273           The ACPI driver can optionally report errors with a great deal
274           of verbosity. Saying Y enables these statements. This will increase
275           your kernel size by around 50K.
276
277 config ACPI_EC
278         bool
279         default y
280         help
281           This driver is required on some systems for the proper operation of
282           the battery and thermal drivers.  If you are compiling for a 
283           mobile system, say Y.
284
285 config ACPI_POWER
286         bool
287         default y
288
289 config ACPI_SYSTEM
290         bool
291         default y
292         help
293           This driver will enable your system to shut down using ACPI, and
294           dump your ACPI DSDT table using /proc/acpi/dsdt.
295
296 config X86_PM_TIMER
297         bool "Power Management Timer Support" if EMBEDDED
298         depends on X86
299         default y
300         help
301           The Power Management Timer is available on all ACPI-capable,
302           in most cases even if ACPI is unusable or blacklisted.
303
304           This timing source is not affected by power management features
305           like aggressive processor idling, throttling, frequency and/or
306           voltage scaling, unlike the commonly used Time Stamp Counter
307           (TSC) timing source.
308
309           You should nearly always say Y here because many modern
310           systems require this timer. 
311
312 config ACPI_CONTAINER
313         tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
314         depends on EXPERIMENTAL
315         default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
316          ---help---
317           This allows _physical_ insertion and removal of CPUs and memory.
318           This can be useful, for example, on NUMA machines that support
319           ACPI based physical hotplug of nodes, or non-NUMA machines that
320           support physical cpu/memory hot-plug.
321
322           If one selects "m", this driver can be loaded with
323           "modprobe acpi_container".
324
325 config ACPI_HOTPLUG_MEMORY
326         tristate "Memory Hotplug"
327         depends on MEMORY_HOTPLUG
328         default n
329         help
330           This driver adds supports for ACPI Memory Hotplug.  This driver
331           provides support for fielding notifications on ACPI memory
332           devices (PNP0C80) which represent memory ranges that may be
333           onlined or offlined during runtime.  
334
335           Enabling this driver assumes that your platform hardware
336           and firmware have support for hot-plugging physical memory. If
337           your system does not support physically adding or ripping out 
338           memory DIMMs at some platform defined granularity (individually 
339           or as a bank) at runtime, then you need not enable this driver.
340
341           If one selects "m," this driver can be loaded using the following
342           command: 
343                 $>modprobe acpi_memhotplug 
344
345 config ACPI_SBS
346         tristate "Smart Battery System (EXPERIMENTAL)"
347         depends on X86
348         depends on EXPERIMENTAL
349         help
350           This driver adds support for the Smart Battery System.
351           A "Smart Battery" is quite old and quite rare compared
352           to today's ACPI "Control Method" battery.
353
354 endif   # ACPI