d7f9839ba264d34fd0159ba1b70289530129ba4c
[linux-2.6.git] / drivers / acpi / Kconfig
1 #
2 # ACPI Configuration
3 #
4
5 menuconfig ACPI
6         bool "ACPI (Advanced Configuration and Power Interface) Support"
7         depends on !IA64_HP_SIM
8         depends on IA64 || X86
9         depends on PCI
10         depends on PM
11         select PNP
12         default y
13         ---help---
14           Advanced Configuration and Power Interface (ACPI) support for 
15           Linux requires an ACPI compliant platform (hardware/firmware),
16           and assumes the presence of OS-directed configuration and power
17           management (OSPM) software.  This option will enlarge your 
18           kernel by about 70K.
19
20           Linux ACPI provides a robust functional replacement for several 
21           legacy configuration and power management interfaces, including
22           the Plug-and-Play BIOS specification (PnP BIOS), the 
23           MultiProcessor Specification (MPS), and the Advanced Power 
24           Management (APM) specification.  If both ACPI and APM support 
25           are configured, whichever is loaded first shall be used.
26
27           The ACPI SourceForge project contains the latest source code, 
28           documentation, tools, mailing list subscription, and other 
29           information.  This project is available at:
30           <http://sourceforge.net/projects/acpi>
31
32           Linux support for ACPI is based on Intel Corporation's ACPI
33           Component Architecture (ACPI CA).  For more information see:
34           <http://developer.intel.com/technology/iapc/acpi>
35
36           ACPI is an open industry specification co-developed by Compaq, 
37           Intel, Microsoft, Phoenix, and Toshiba.  The specification is 
38           available at:
39           <http://www.acpi.info>
40
41 if ACPI
42
43 config ACPI_SLEEP
44         bool
45         depends on SUSPEND || HIBERNATION
46         default y
47
48 config ACPI_PROCFS
49         bool "Deprecated /proc/acpi files"
50         depends on PROC_FS
51         ---help---
52           For backwards compatibility, this option allows
53           deprecated /proc/acpi/ files to exist, even when
54           they have been replaced by functions in /sys.
55           The deprecated files (and their replacements) include:
56
57           /proc/acpi/sleep (/sys/power/state)
58           /proc/acpi/info (/sys/modules/acpi/parameters/acpica_version)
59           /proc/acpi/dsdt (/sys/firmware/acpi/tables/DSDT)
60           /proc/acpi/fadt (/sys/firmware/acpi/tables/FACP)
61           /proc/acpi/debug_layer (/sys/module/acpi/parameters/debug_layer)
62           /proc/acpi/debug_level (/sys/module/acpi/parameters/debug_level)
63
64           This option has no effect on /proc/acpi/ files
65           and functions which do not yet exist in /sys.
66
67           Say N to delete /proc/acpi/ files that have moved to /sys/
68 config ACPI_PROCFS_POWER
69         bool "Deprecated power /proc/acpi directories"
70         depends on PROC_FS
71         default y
72         ---help---
73           For backwards compatibility, this option allows
74           deprecated power /proc/acpi/ directories to exist, even when
75           they have been replaced by functions in /sys.
76           The deprecated directories (and their replacements) include:
77           /proc/acpi/battery/* (/sys/class/power_supply/*)
78           /proc/acpi/ac_adapter/* (sys/class/power_supply/*)
79           This option has no effect on /proc/acpi/ directories
80           and functions, which do not yet exist in /sys
81
82           Say N to delete power /proc/acpi/ directories that have moved to /sys/
83
84 config ACPI_SYSFS_POWER
85         bool "Future power /sys interface"
86         select POWER_SUPPLY
87         default y
88         ---help---
89           Say N to disable power /sys interface
90
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         select THERMAL
142         help
143           This driver implement the ACPI Extensions For Display Adapters
144           for integrated graphics devices on motherboard, as specified in
145           ACPI 2.0 Specification, Appendix B, allowing to perform some basic
146           control like defining the video POST device, retrieving EDID information
147           or to setup a video output, etc.
148           Note that this is an ref. implementation only.  It may or may not work
149           for your integrated video device.
150
151 config ACPI_FAN
152         tristate "Fan"
153         select THERMAL
154         default y
155         help
156           This driver adds support for ACPI fan devices, allowing user-mode 
157           applications to perform basic fan control (on, off, status).
158
159 config ACPI_DOCK
160         bool "Dock"
161         depends on EXPERIMENTAL
162         help
163           This driver adds support for ACPI controlled docking stations and removable
164           drive bays such as the IBM ultrabay or the Dell Module Bay.
165
166 config ACPI_PROCESSOR
167         tristate "Processor"
168         select THERMAL
169         default y
170         help
171           This driver installs ACPI as the idle handler for Linux, and uses
172           ACPI C2 and C3 processor states to save power, on systems that
173           support it.  It is required by several flavors of cpufreq
174           Performance-state drivers.
175
176 config ACPI_HOTPLUG_CPU
177         bool
178         depends on ACPI_PROCESSOR && HOTPLUG_CPU
179         select ACPI_CONTAINER
180         default y
181
182 config ACPI_THERMAL
183         tristate "Thermal Zone"
184         depends on ACPI_PROCESSOR
185         select THERMAL
186         default y
187         help
188           This driver adds support for ACPI thermal zones.  Most mobile and
189           some desktop systems support ACPI thermal zones.  It is HIGHLY
190           recommended that this option be enabled, as your processor(s)
191           may be damaged without it.
192
193 config ACPI_NUMA
194         bool "NUMA support"
195         depends on NUMA
196         depends on (X86 || IA64)
197         default y if IA64_GENERIC || IA64_SGI_SN2
198
199 config ACPI_CUSTOM_DSDT_FILE
200         string "Custom DSDT Table file to include"
201         default ""
202         depends on !STANDALONE
203         help
204           This option supports a custom DSDT by linking it into the kernel.
205           See Documentation/acpi/dsdt-override.txt
206
207           Enter the full path name to the file which includes the AmlCode
208           declaration.
209
210           If unsure, don't enter a file name.
211
212 config ACPI_CUSTOM_DSDT
213         bool
214         default ACPI_CUSTOM_DSDT_FILE != ""
215
216 config ACPI_BLACKLIST_YEAR
217         int "Disable ACPI for systems before Jan 1st this year" if X86_32
218         default 0
219         help
220           enter a 4-digit year, eg. 2001 to disable ACPI by default
221           on platforms with DMI BIOS date before January 1st that year.
222           "acpi=force" can be used to override this mechanism.
223
224           Enter 0 to disable this mechanism and allow ACPI to
225           run by default no matter what the year.  (default)
226
227 config ACPI_DEBUG
228         bool "Debug Statements"
229         default n
230         help
231           The ACPI subsystem can produce debug output.  Saying Y enables this
232           output and increases the kernel size by around 50K.
233
234           Use the acpi.debug_layer and acpi.debug_level kernel command-line
235           parameters documented in Documentation/acpi/debug.txt and
236           Documentation/kernel-parameters.txt to control the type and
237           amount of debug output.
238
239 config ACPI_DEBUG_FUNC_TRACE
240         bool "Additionally enable ACPI function tracing"
241         default n
242         depends on ACPI_DEBUG
243         help
244           ACPI Debug Statements slow down ACPI processing. Function trace
245           is about half of the penalty and is rarely useful.
246
247 config ACPI_PCI_SLOT
248         tristate "PCI slot detection driver"
249         default n
250         help
251           This driver will attempt to discover all PCI slots in your system,
252           and creates entries in /sys/bus/pci/slots/. This feature can
253           help you correlate PCI bus addresses with the physical geography
254           of your slots. If you are unsure, say N.
255
256 config ACPI_SYSTEM
257         bool
258         default y
259         help
260           This driver will enable your system to shut down using ACPI, and
261           dump your ACPI DSDT table using /proc/acpi/dsdt.
262
263 config X86_PM_TIMER
264         bool "Power Management Timer Support" if EMBEDDED
265         depends on X86
266         default y
267         help
268           The Power Management Timer is available on all ACPI-capable,
269           in most cases even if ACPI is unusable or blacklisted.
270
271           This timing source is not affected by power management features
272           like aggressive processor idling, throttling, frequency and/or
273           voltage scaling, unlike the commonly used Time Stamp Counter
274           (TSC) timing source.
275
276           You should nearly always say Y here because many modern
277           systems require this timer. 
278
279 config ACPI_CONTAINER
280         tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
281         depends on EXPERIMENTAL
282         default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
283          ---help---
284           This allows _physical_ insertion and removal of CPUs and memory.
285           This can be useful, for example, on NUMA machines that support
286           ACPI based physical hotplug of nodes, or non-NUMA machines that
287           support physical cpu/memory hot-plug.
288
289           If one selects "m", this driver can be loaded with
290           "modprobe acpi_container".
291
292 config ACPI_HOTPLUG_MEMORY
293         tristate "Memory Hotplug"
294         depends on MEMORY_HOTPLUG
295         default n
296         help
297           This driver adds supports for ACPI Memory Hotplug.  This driver
298           provides support for fielding notifications on ACPI memory
299           devices (PNP0C80) which represent memory ranges that may be
300           onlined or offlined during runtime.  
301
302           Enabling this driver assumes that your platform hardware
303           and firmware have support for hot-plugging physical memory. If
304           your system does not support physically adding or ripping out 
305           memory DIMMs at some platform defined granularity (individually 
306           or as a bank) at runtime, then you need not enable this driver.
307
308           If one selects "m," this driver can be loaded using the following
309           command: 
310                 $>modprobe acpi_memhotplug 
311
312 config ACPI_SBS
313         tristate "Smart Battery System"
314         depends on X86
315         help
316           This driver adds support for the Smart Battery System, another
317           type of access to battery information, found on some laptops.
318
319 endif   # ACPI