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