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