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