xref: /linux/drivers/acpi/Kconfig (revision b454cc6636d254fbf6049b73e9560aee76fb04a3)
1#
2# ACPI Configuration
3#
4
5menu "ACPI (Advanced Configuration and Power Interface) Support"
6	depends on !X86_NUMAQ
7	depends on !X86_VISWS
8	depends on !IA64_HP_SIM
9	depends on IA64 || X86
10
11config ACPI
12	bool "ACPI Support"
13	depends on IA64 || X86
14	depends on PCI
15	depends on PM
16	default y
17	---help---
18	  Advanced Configuration and Power Interface (ACPI) support for
19	  Linux requires an ACPI compliant platform (hardware/firmware),
20	  and assumes the presence of OS-directed configuration and power
21	  management (OSPM) software.  This option will enlarge your
22	  kernel by about 70K.
23
24	  Linux ACPI provides a robust functional replacement for several
25	  legacy configuration and power management interfaces, including
26	  the Plug-and-Play BIOS specification (PnP BIOS), the
27	  MultiProcessor Specification (MPS), and the Advanced Power
28	  Management (APM) specification.  If both ACPI and APM support
29	  are configured, whichever is loaded first shall be used.
30
31	  The ACPI SourceForge project contains the latest source code,
32	  documentation, tools, mailing list subscription, and other
33	  information.  This project is available at:
34	  <http://sourceforge.net/projects/acpi>
35
36	  Linux support for ACPI is based on Intel Corporation's ACPI
37	  Component Architecture (ACPI CA).  For more information see:
38	  <http://developer.intel.com/technology/iapc/acpi>
39
40	  ACPI is an open industry specification co-developed by Compaq,
41	  Intel, Microsoft, Phoenix, and Toshiba.  The specification is
42	  available at:
43	  <http://www.acpi.info>
44
45if ACPI
46
47config ACPI_SLEEP
48	bool "Sleep States"
49	depends on X86 && (!SMP || SUSPEND_SMP)
50	depends on PM
51	default y
52	---help---
53	  This option adds support for ACPI suspend states.
54
55	  With this option, you will be able to put the system "to sleep".
56	  Sleep states are low power states for the system and devices. All
57	  of the system operating state is saved to either memory or disk
58	  (depending on the state), to allow the system to resume operation
59	  quickly at your request.
60
61	  Although this option sounds really nifty, barely any of the device
62	  drivers have been converted to the new driver model and hence few
63	  have proper power management support.
64
65	  This option is not recommended for anyone except those doing driver
66	  power management development.
67
68config ACPI_SLEEP_PROC_FS
69	bool
70	depends on ACPI_SLEEP && PROC_FS
71	default y
72
73config ACPI_SLEEP_PROC_SLEEP
74	bool "/proc/acpi/sleep (deprecated)"
75	depends on ACPI_SLEEP_PROC_FS
76	default n
77	---help---
78	  Create /proc/acpi/sleep
79	  Deprecated by /sys/power/state
80
81config ACPI_PROCFS
82	bool "Procfs interface (deprecated)"
83	depends on ACPI
84	default y
85	---help---
86	  Procfs interface for ACPI is made optional for back-compatible.
87	  As the same functions are duplicated in sysfs interface
88	  and this proc interface will be removed some time later,
89	  it's marked as deprecated.
90	  ( /proc/acpi/debug_layer && debug_level are deprecated by
91	    /sys/module/acpi/parameters/debug_layer && debug_level.
92	    /proc/acpi/info is deprecated by
93	    /sys/module/acpi/parameters/acpica_version )
94
95config ACPI_AC
96	tristate "AC Adapter"
97	depends on X86
98	default y
99	help
100	  This driver adds support for the AC Adapter object, which indicates
101	  whether a system is on AC, or not. If you have a system that can
102	  switch between A/C and battery, say Y.
103
104config ACPI_BATTERY
105	tristate "Battery"
106	depends on X86
107	default y
108	help
109	  This driver adds support for battery information through
110	  /proc/acpi/battery. If you have a mobile system with a battery,
111	  say Y.
112
113config ACPI_BUTTON
114	tristate "Button"
115	depends on INPUT
116	default y
117	help
118	  This driver handles events on the power, sleep and lid buttons.
119	  A daemon reads /proc/acpi/event and perform user-defined actions
120	  such as shutting down the system.  This is necessary for
121	  software controlled poweroff.
122
123config ACPI_VIDEO
124	tristate "Video"
125	depends on X86 && BACKLIGHT_CLASS_DEVICE
126	help
127	  This driver implement the ACPI Extensions For Display Adapters
128	  for integrated graphics devices on motherboard, as specified in
129	  ACPI 2.0 Specification, Appendix B, allowing to perform some basic
130	  control like defining the video POST device, retrieving EDID information
131	  or to setup a video output, etc.
132	  Note that this is an ref. implementation only.  It may or may not work
133	  for your integrated video device.
134
135config ACPI_HOTKEY
136	tristate "Generic Hotkey (EXPERIMENTAL)"
137	depends on EXPERIMENTAL
138	depends on X86
139	default n
140	help
141	  Experimental consolidated hotkey driver.
142	  If you are unsure, say N.
143
144config ACPI_FAN
145	tristate "Fan"
146	default y
147	help
148	  This driver adds support for ACPI fan devices, allowing user-mode
149	  applications to perform basic fan control (on, off, status).
150
151config ACPI_DOCK
152	tristate "Dock"
153	depends on EXPERIMENTAL
154	help
155	  This driver adds support for ACPI controlled docking stations
156
157config ACPI_BAY
158	tristate "Removable Drive Bay (EXPERIMENTAL)"
159	depends on EXPERIMENTAL
160	help
161	  This driver adds support for ACPI controlled removable drive
162	  bays such as the IBM ultrabay or the Dell Module Bay.
163
164config ACPI_PROCESSOR
165	tristate "Processor"
166	default y
167	help
168	  This driver installs ACPI as the idle handler for Linux, and uses
169	  ACPI C2 and C3 processor states to save power, on systems that
170	  support it.  It is required by several flavors of cpufreq
171	  Performance-state drivers.
172
173config ACPI_HOTPLUG_CPU
174	bool
175	depends on ACPI_PROCESSOR && HOTPLUG_CPU
176	select ACPI_CONTAINER
177	default y
178
179config ACPI_THERMAL
180	tristate "Thermal Zone"
181	depends on ACPI_PROCESSOR
182	default y
183	help
184	  This driver adds support for ACPI thermal zones.  Most mobile and
185	  some desktop systems support ACPI thermal zones.  It is HIGHLY
186	  recommended that this option be enabled, as your processor(s)
187	  may be damaged without it.
188
189config ACPI_NUMA
190	bool "NUMA support"
191	depends on NUMA
192	depends on (X86 || IA64)
193	default y if IA64_GENERIC || IA64_SGI_SN2
194
195config ACPI_ASUS
196        tristate "ASUS/Medion Laptop Extras"
197	depends on X86
198	select BACKLIGHT_CLASS_DEVICE
199        ---help---
200          This driver provides support for extra features of ACPI-compatible
201          ASUS laptops. As some of Medion laptops are made by ASUS, it may also
202          support some Medion laptops (such as 9675 for example).  It makes all
203          the extra buttons generate standard ACPI events that go through
204          /proc/acpi/events, and (on some models) adds support for changing the
205          display brightness and output, switching the LCD backlight on and off,
206          and most importantly, allows you to blink those fancy LEDs intended
207          for reporting mail and wireless status.
208
209	  Note: display switching code is currently considered EXPERIMENTAL,
210	  toying with these values may even lock your machine.
211
212          All settings are changed via /proc/acpi/asus directory entries. Owner
213          and group for these entries can be set with asus_uid and asus_gid
214          parameters.
215
216          More information and a userspace daemon for handling the extra buttons
217          at <http://sourceforge.net/projects/acpi4asus/>.
218
219          If you have an ACPI-compatible ASUS laptop, say Y or M here. This
220          driver is still under development, so if your laptop is unsupported or
221          something works not quite as expected, please use the mailing list
222          available on the above page (acpi4asus-user@lists.sourceforge.net).
223
224	  NOTE: This driver is deprecated and will probably be removed soon,
225	  use asus-laptop instead.
226
227config ACPI_IBM
228	tristate "IBM ThinkPad Laptop Extras"
229	depends on X86
230	select BACKLIGHT_CLASS_DEVICE
231	---help---
232	  This is a Linux ACPI driver for the IBM ThinkPad laptops. It adds
233	  support for Fn-Fx key combinations, Bluetooth control, video
234	  output switching, ThinkLight control, UltraBay eject and more.
235	  For more information about this driver see <file:Documentation/ibm-acpi.txt>
236	  and <http://ibm-acpi.sf.net/> .
237
238	  If you have an IBM ThinkPad laptop, say Y or M here.
239
240config ACPI_IBM_DOCK
241	bool "Legacy Docking Station Support"
242	depends on ACPI_IBM
243	depends on ACPI_DOCK=n
244	default n
245	---help---
246	  Allows the ibm_acpi driver to handle docking station events.
247	  This support is obsoleted by CONFIG_HOTPLUG_PCI_ACPI.  It will
248	  allow locking and removing the laptop from the docking station,
249	  but will not properly connect PCI devices.
250
251	  If you are not sure, say N here.
252
253config ACPI_TOSHIBA
254	tristate "Toshiba Laptop Extras"
255	depends on X86
256	select BACKLIGHT_CLASS_DEVICE
257	---help---
258	  This driver adds support for access to certain system settings
259	  on "legacy free" Toshiba laptops.  These laptops can be recognized by
260	  their lack of a BIOS setup menu and APM support.
261
262	  On these machines, all system configuration is handled through the
263	  ACPI.  This driver is required for access to controls not covered
264	  by the general ACPI drivers, such as LCD brightness, video output,
265	  etc.
266
267	  This driver differs from the non-ACPI Toshiba laptop driver (located
268	  under "Processor type and features") in several aspects.
269	  Configuration is accessed by reading and writing text files in the
270	  /proc tree instead of by program interface to /dev.  Furthermore, no
271	  power management functions are exposed, as those are handled by the
272	  general ACPI drivers.
273
274	  More information about this driver is available at
275	  <http://memebeam.org/toys/ToshibaAcpiDriver>.
276
277	  If you have a legacy free Toshiba laptop (such as the Libretto L1
278	  series), say Y.
279
280config ACPI_CUSTOM_DSDT
281	bool "Include Custom DSDT"
282	depends on !STANDALONE
283	default n
284	help
285	  This option is to load a custom ACPI DSDT
286	  If you don't know what that is, say N.
287
288config ACPI_CUSTOM_DSDT_FILE
289	string "Custom DSDT Table file to include"
290	depends on ACPI_CUSTOM_DSDT
291	default ""
292	help
293	  Enter the full path name to the file which includes the AmlCode
294	  declaration.
295
296config ACPI_BLACKLIST_YEAR
297	int "Disable ACPI for systems before Jan 1st this year" if X86_32
298	default 0
299	help
300	  enter a 4-digit year, eg. 2001 to disable ACPI by default
301	  on platforms with DMI BIOS date before January 1st that year.
302	  "acpi=force" can be used to override this mechanism.
303
304	  Enter 0 to disable this mechanism and allow ACPI to
305	  run by default no matter what the year.  (default)
306
307config ACPI_DEBUG
308	bool "Debug Statements"
309	default n
310	help
311	  The ACPI driver can optionally report errors with a great deal
312	  of verbosity. Saying Y enables these statements. This will increase
313	  your kernel size by around 50K.
314
315config ACPI_EC
316	bool
317	default y
318	help
319	  This driver is required on some systems for the proper operation of
320	  the battery and thermal drivers.  If you are compiling for a
321	  mobile system, say Y.
322
323config ACPI_POWER
324	bool
325	default y
326
327config ACPI_SYSTEM
328	bool
329	default y
330	help
331	  This driver will enable your system to shut down using ACPI, and
332	  dump your ACPI DSDT table using /proc/acpi/dsdt.
333
334config X86_PM_TIMER
335	bool "Power Management Timer Support" if EMBEDDED
336	depends on X86
337	default y
338	help
339	  The Power Management Timer is available on all ACPI-capable,
340	  in most cases even if ACPI is unusable or blacklisted.
341
342	  This timing source is not affected by power management features
343	  like aggressive processor idling, throttling, frequency and/or
344	  voltage scaling, unlike the commonly used Time Stamp Counter
345	  (TSC) timing source.
346
347	  You should nearly always say Y here because many modern
348	  systems require this timer.
349
350config ACPI_CONTAINER
351	tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
352	depends on EXPERIMENTAL
353	default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
354	 ---help---
355	  This allows _physical_ insertion and removal of CPUs and memory.
356	  This can be useful, for example, on NUMA machines that support
357	  ACPI based physical hotplug of nodes, or non-NUMA machines that
358	  support physical cpu/memory hot-plug.
359
360	  If one selects "m", this driver can be loaded with
361	  "modprobe acpi_container".
362
363config ACPI_HOTPLUG_MEMORY
364	tristate "Memory Hotplug"
365	depends on ACPI
366	depends on MEMORY_HOTPLUG
367	default n
368	help
369	  This driver adds supports for ACPI Memory Hotplug.  This driver
370	  provides support for fielding notifications on ACPI memory
371	  devices (PNP0C80) which represent memory ranges that may be
372	  onlined or offlined during runtime.
373
374	  Enabling this driver assumes that your platform hardware
375	  and firmware have support for hot-plugging physical memory. If
376	  your system does not support physically adding or ripping out
377	  memory DIMMs at some platform defined granularity (individually
378	  or as a bank) at runtime, then you need not enable this driver.
379
380	  If one selects "m," this driver can be loaded using the following
381	  command:
382		$>modprobe acpi_memhotplug
383
384config ACPI_SBS
385	tristate "Smart Battery System (EXPERIMENTAL)"
386	depends on X86 && I2C
387	depends on EXPERIMENTAL
388	help
389	  This driver adds support for the Smart Battery System.
390	  Depends on I2C (Device Drivers ---> I2C support)
391	  A "Smart Battery" is quite old and quite rare compared
392	  to today's ACPI "Control Method" battery.
393
394endif	# ACPI
395
396endmenu
397