ACPI: create Processor Aggregator Device driver
[linux-2.6/linux-acpi-2.6.git] / drivers / acpi / Kconfig
blob13531ed3cbd3658b98dcfc85c69dc0aef89efeb5
2 # ACPI Configuration
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         select CPU_IDLE
13         default y
14         help
15           Advanced Configuration and Power Interface (ACPI) support for 
16           Linux requires an ACPI-compliant platform (hardware/firmware),
17           and assumes the presence of OS-directed configuration and power
18           management (OSPM) software.  This option will enlarge your 
19           kernel by about 70K.
21           Linux ACPI provides a robust functional replacement for several 
22           legacy configuration and power management interfaces, including
23           the Plug-and-Play BIOS specification (PnP BIOS), the 
24           MultiProcessor Specification (MPS), and the Advanced Power 
25           Management (APM) specification.  If both ACPI and APM support 
26           are configured, ACPI is used.
28           The project home page for the Linux ACPI subsystem is here:
29           <http://www.lesswatts.org/projects/acpi/>
31           Linux support for ACPI is based on Intel Corporation's ACPI
32           Component Architecture (ACPI CA).  For more information on the
33           ACPI CA, see:
34           <http://acpica.org/>
36           ACPI is an open industry specification co-developed by
37           Hewlett-Packard, Intel, Microsoft, Phoenix, and Toshiba.
38           The specification is available at:
39           <http://www.acpi.info>
41 if ACPI
43 config ACPI_SLEEP
44         bool
45         depends on SUSPEND || HIBERNATION
46         default y
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:
57           /proc/acpi/sleep (/sys/power/state)
58           /proc/acpi/info (/sys/module/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)
64           This option has no effect on /proc/acpi/ files
65           and functions which do not yet exist in /sys.
67           Say N to delete /proc/acpi/ files that have moved to /sys/
69 config ACPI_PROCFS_POWER
70         bool "Deprecated power /proc/acpi directories"
71         depends on PROC_FS
72         default y
73         help
74           For backwards compatibility, this option allows
75           deprecated power /proc/acpi/ directories to exist, even when
76           they have been replaced by functions in /sys.
77           The deprecated directories (and their replacements) include:
78           /proc/acpi/battery/* (/sys/class/power_supply/*)
79           /proc/acpi/ac_adapter/* (sys/class/power_supply/*)
80           This option has no effect on /proc/acpi/ directories
81           and functions, which do not yet exist in /sys
83           Say N to delete power /proc/acpi/ directories 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
92 config ACPI_PROC_EVENT
93         bool "Deprecated /proc/acpi/event support"
94         depends on PROC_FS
95         default y
96         help
97           A user-space daemon, acpid, typically reads /proc/acpi/event
98           and handles all ACPI-generated events.
100           These events are now delivered to user-space either
101           via the input layer or as netlink events.
103           This build option enables the old code for legacy
104           user-space implementation.  After some time, this will
105           be moved under CONFIG_ACPI_PROCFS, and then deleted.
107           Say Y here to retain the old behaviour.  Say N if your
108           user-space is newer than kernel 2.6.23 (September 2007).
110 config ACPI_AC
111         tristate "AC Adapter"
112         depends on X86
113         default y
114         help
115           This driver supports the AC Adapter object, which indicates
116           whether a system is on AC or not.  If you have a system that can
117           switch between A/C and battery, say Y.
119           To compile this driver as a module, choose M here:
120           the module will be called ac.
122 config ACPI_BATTERY
123         tristate "Battery"
124         depends on X86
125         default y
126         help
127           This driver adds support for battery information through
128           /proc/acpi/battery. If you have a mobile system with a battery, 
129           say Y.
131           To compile this driver as a module, choose M here:
132           the module will be called battery.
134 config ACPI_BUTTON
135         tristate "Button"
136         depends on INPUT
137         default y
138         help
139           This driver handles events on the power, sleep, and lid buttons.
140           A daemon reads /proc/acpi/event and perform user-defined actions
141           such as shutting down the system.  This is necessary for
142           software-controlled poweroff.
144           To compile this driver as a module, choose M here:
145           the module will be called button.
147 config ACPI_VIDEO
148         tristate "Video"
149         depends on X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL
150         depends on INPUT
151         select THERMAL
152         help
153           This driver implements the ACPI Extensions For Display Adapters
154           for integrated graphics devices on motherboard, as specified in
155           ACPI 2.0 Specification, Appendix B.  This supports basic operations
156           such as defining the video POST device, retrieving EDID information,
157           and setting up a video output.
159           To compile this driver as a module, choose M here:
160           the module will be called video.
162 config ACPI_FAN
163         tristate "Fan"
164         select THERMAL
165         default y
166         help
167           This driver supports ACPI fan devices, allowing user-mode
168           applications to perform basic fan control (on, off, status).
170           To compile this driver as a module, choose M here:
171           the module will be called fan.
173 config ACPI_DOCK
174         bool "Dock"
175         depends on EXPERIMENTAL
176         help
177           This driver supports ACPI-controlled docking stations and removable
178           drive bays such as the IBM Ultrabay and the Dell Module Bay.
180 config ACPI_PROCESSOR
181         tristate "Processor"
182         select THERMAL
183         default y
184         help
185           This driver installs ACPI as the idle handler for Linux and uses
186           ACPI C2 and C3 processor states to save power on systems that
187           support it.  It is required by several flavors of cpufreq
188           performance-state drivers.
190           To compile this driver as a module, choose M here:
191           the module will be called processor.
193 config ACPI_HOTPLUG_CPU
194         bool
195         depends on ACPI_PROCESSOR && HOTPLUG_CPU
196         select ACPI_CONTAINER
197         default y
199 config ACPI_PROCESSOR_AGGREGATOR
200         tristate "Processor Aggregator"
201         depends on ACPI_PROCESSOR
202         depends on EXPERIMENTAL
203         help
204           ACPI 4.0 defines processor Aggregator, which enables OS to perform
205           specfic processor configuration and control that applies to all
206           processors in the platform. Currently only logical processor idling
207           is defined, which is to reduce power consumption. This driver
208           support the new device.
210 config ACPI_THERMAL
211         tristate "Thermal Zone"
212         depends on ACPI_PROCESSOR
213         select THERMAL
214         default y
215         help
216           This driver supports ACPI thermal zones.  Most mobile and
217           some desktop systems support ACPI thermal zones.  It is HIGHLY
218           recommended that this option be enabled, as your processor(s)
219           may be damaged without it.
221           To compile this driver as a module, choose M here:
222           the module will be called thermal.
224 config ACPI_NUMA
225         bool "NUMA support"
226         depends on NUMA
227         depends on (X86 || IA64)
228         default y if IA64_GENERIC || IA64_SGI_SN2
230 config ACPI_CUSTOM_DSDT_FILE
231         string "Custom DSDT Table file to include"
232         default ""
233         depends on !STANDALONE
234         help
235           This option supports a custom DSDT by linking it into the kernel.
236           See Documentation/acpi/dsdt-override.txt
238           Enter the full path name to the file which includes the AmlCode
239           declaration.
241           If unsure, don't enter a file name.
243 config ACPI_CUSTOM_DSDT
244         bool
245         default ACPI_CUSTOM_DSDT_FILE != ""
247 config ACPI_BLACKLIST_YEAR
248         int "Disable ACPI for systems before Jan 1st this year" if X86_32
249         default 0
250         help
251           Enter a 4-digit year, e.g., 2001, to disable ACPI by default
252           on platforms with DMI BIOS date before January 1st that year.
253           "acpi=force" can be used to override this mechanism.
255           Enter 0 to disable this mechanism and allow ACPI to
256           run by default no matter what the year.  (default)
258 config ACPI_DEBUG
259         bool "Debug Statements"
260         default n
261         help
262           The ACPI subsystem can produce debug output.  Saying Y enables this
263           output and increases the kernel size by around 50K.
265           Use the acpi.debug_layer and acpi.debug_level kernel command-line
266           parameters documented in Documentation/acpi/debug.txt and
267           Documentation/kernel-parameters.txt to control the type and
268           amount of debug output.
270 config ACPI_DEBUG_FUNC_TRACE
271         bool "Additionally enable ACPI function tracing"
272         default n
273         depends on ACPI_DEBUG
274         help
275           ACPI Debug Statements slow down ACPI processing. Function trace
276           is about half of the penalty and is rarely useful.
278 config ACPI_PCI_SLOT
279         tristate "PCI slot detection driver"
280         depends on SYSFS
281         default n
282         help
283           This driver creates entries in /sys/bus/pci/slots/ for all PCI
284           slots in the system.  This can help correlate PCI bus addresses,
285           i.e., segment/bus/device/function tuples, with physical slots in
286           the system.  If you are unsure, say N.
288           To compile this driver as a module, choose M here:
289           the module will be called pci_slot.
291 config X86_PM_TIMER
292         bool "Power Management Timer Support" if EMBEDDED
293         depends on X86
294         default y
295         help
296           The Power Management Timer is available on all ACPI-capable,
297           in most cases even if ACPI is unusable or blacklisted.
299           This timing source is not affected by power management features
300           like aggressive processor idling, throttling, frequency and/or
301           voltage scaling, unlike the commonly used Time Stamp Counter
302           (TSC) timing source.
304           You should nearly always say Y here because many modern
305           systems require this timer. 
307 config ACPI_CONTAINER
308         tristate "Container and Module Devices (EXPERIMENTAL)"
309         depends on EXPERIMENTAL
310         default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
311         help
312           This driver supports ACPI Container and Module devices (IDs
313           ACPI0004, PNP0A05, and PNP0A06).
315           This helps support hotplug of nodes, CPUs, and memory.
317           To compile this driver as a module, choose M here:
318           the module will be called container.
320 config ACPI_HOTPLUG_MEMORY
321         tristate "Memory Hotplug"
322         depends on MEMORY_HOTPLUG
323         default n
324         help
325           This driver supports ACPI memory hotplug.  The driver
326           fields notifications on ACPI memory devices (PNP0C80),
327           which represent memory ranges that may be onlined or
328           offlined during runtime.
330           If your hardware and firmware do not support adding or
331           removing memory devices at runtime, you need not enable
332           this driver.
334           To compile this driver as a module, choose M here:
335           the module will be called acpi_memhotplug.
337 config ACPI_SBS
338         tristate "Smart Battery System"
339         depends on X86
340         help
341           This driver supports the Smart Battery System, another
342           type of access to battery information, found on some laptops.
344           To compile this driver as a module, choose M here:
345           the modules will be called sbs and sbshc.
347 endif   # ACPI