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