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