xref: /linux/drivers/acpi/Kconfig (revision 36ca1195ad7f760a6af3814cb002bd3a3d4b4db1)
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
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
43if ACPI
44
45config ACPI_BOOT
46	bool
47	default y
48
49config ACPI_INTERPRETER
50	bool
51	depends on !IA64_SGI_SN
52	default y
53
54if ACPI_INTERPRETER
55
56config ACPI_SLEEP
57	bool "Sleep States (EXPERIMENTAL)"
58	depends on X86
59	depends on EXPERIMENTAL && PM
60	default y
61	---help---
62	  This option adds support for ACPI suspend states.
63
64	  With this option, you will be able to put the system "to sleep".
65	  Sleep states are low power states for the system and devices. All
66	  of the system operating state is saved to either memory or disk
67	  (depending on the state), to allow the system to resume operation
68	  quickly at your request.
69
70	  Although this option sounds really nifty, barely any of the device
71	  drivers have been converted to the new driver model and hence few
72	  have proper power management support.
73
74	  This option is not recommended for anyone except those doing driver
75	  power management development.
76
77config ACPI_SLEEP_PROC_FS
78	bool
79	depends on ACPI_SLEEP && PROC_FS
80	default y
81
82config ACPI_AC
83	tristate "AC Adapter"
84	depends on X86
85	default m
86	help
87	  This driver adds support for the AC Adapter object, which indicates
88	  whether a system is on AC, or not.  Typically, only mobile systems
89	  have this object, since desktops are always on AC.
90
91config ACPI_BATTERY
92	tristate "Battery"
93	depends on X86
94	default m
95	help
96	  This driver adds support for battery information through
97	  /proc/acpi/battery. If you have a mobile system with a battery,
98	  say Y.
99
100config ACPI_BUTTON
101	tristate "Button"
102	depends on !IA64_SGI_SN
103	default m
104	help
105	  This driver registers for events based on buttons, such as the
106	  power, sleep, and lid switch.  In the future, a daemon will read
107	  /proc/acpi/event and perform user-defined actions such as shutting
108	  down the system.  Until then, you can cat it, and see output when
109	  a button is pressed.
110
111config ACPI_VIDEO
112	tristate "Video"
113	depends on EXPERIMENTAL
114	depends on !IA64_SGI_SN
115	default m
116	help
117	  This driver implement the ACPI Extensions For Display Adapters
118	  for integrated graphics devices on motherboard, as specified in
119	  ACPI 2.0 Specification, Appendix B, allowing to perform some basic
120	  control like defining the video POST device, retrieving EDID information
121	  or to setup a video output, etc.
122	  Note that this is an ref. implementation only.  It may or may not work
123	  for your integrated video device.
124
125config ACPI_FAN
126	tristate "Fan"
127	depends on !IA64_SGI_SN
128	default m
129	help
130	  This driver adds support for ACPI fan devices, allowing user-mode
131	  applications to perform basic fan control (on, off, status).
132
133config ACPI_PROCESSOR
134	tristate "Processor"
135	depends on !IA64_SGI_SN
136	default m
137	help
138	  This driver installs ACPI as the idle handler for Linux, and uses
139	  ACPI C2 and C3 processor states to save power, on systems that
140	  support it.
141
142config ACPI_HOTPLUG_CPU
143	bool "Processor Hotplug (EXPERIMENTAL)"
144	depends on ACPI_PROCESSOR && HOTPLUG_CPU && EXPERIMENTAL
145	depends on !IA64_SGI_SN
146	select ACPI_CONTAINER
147	default n
148	 ---help---
149	 Select this option if your platform support physical CPU hotplug.
150
151config ACPI_THERMAL
152	tristate "Thermal Zone"
153	depends on ACPI_PROCESSOR
154	default m
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 (IA64 || X86_64)
165	default y if IA64_GENERIC || IA64_SGI_SN2
166
167config ACPI_ASUS
168        tristate "ASUS/Medion Laptop Extras"
169	depends on X86
170	default m
171        ---help---
172          This driver provides support for extra features of ACPI-compatible
173          ASUS laptops. As some of Medion laptops are made by ASUS, it may also
174          support some Medion laptops (such as 9675 for example).  It makes all
175          the extra buttons generate standard ACPI events that go through
176          /proc/acpi/events, and (on some models) adds support for changing the
177          display brightness and output, switching the LCD backlight on and off,
178          and most importantly, allows you to blink those fancy LEDs intended
179          for reporting mail and wireless status.
180
181	  Note: display switching code is currently considered EXPERIMENTAL,
182	  toying with these values may even lock your machine.
183
184          All settings are changed via /proc/acpi/asus directory entries. Owner
185          and group for these entries can be set with asus_uid and asus_gid
186          parameters.
187
188          More information and a userspace daemon for handling the extra buttons
189          at <http://sourceforge.net/projects/acpi4asus/>.
190
191          If you have an ACPI-compatible ASUS laptop, say Y or M here. This
192          driver is still under development, so if your laptop is unsupported or
193          something works not quite as expected, please use the mailing list
194          available on the above page (acpi4asus-user@lists.sourceforge.net)
195
196config ACPI_IBM
197	tristate "IBM ThinkPad Laptop Extras"
198	depends on X86
199	default m
200	---help---
201	  This is a Linux ACPI driver for the IBM ThinkPad laptops. It adds
202	  support for Fn-Fx key combinations, Bluetooth control, video
203	  output switching, ThinkLight control, UltraBay eject and more.
204	  For more information about this driver see <file:Documentation/ibm-acpi.txt>
205	  and <http://ibm-acpi.sf.net/> .
206
207	  If you have an IBM ThinkPad laptop, say Y or M here.
208
209config ACPI_TOSHIBA
210	tristate "Toshiba Laptop Extras"
211	depends on X86
212	default m
213	---help---
214	  This driver adds support for access to certain system settings
215	  on "legacy free" Toshiba laptops.  These laptops can be recognized by
216	  their lack of a BIOS setup menu and APM support.
217
218	  On these machines, all system configuration is handled through the
219	  ACPI.  This driver is required for access to controls not covered
220	  by the general ACPI drivers, such as LCD brightness, video output,
221	  etc.
222
223	  This driver differs from the non-ACPI Toshiba laptop driver (located
224	  under "Processor type and features") in several aspects.
225	  Configuration is accessed by reading and writing text files in the
226	  /proc tree instead of by program interface to /dev.  Furthermore, no
227	  power management functions are exposed, as those are handled by the
228	  general ACPI drivers.
229
230	  More information about this driver is available at
231	  <http://memebeam.org/toys/ToshibaAcpiDriver>.
232
233	  If you have a legacy free Toshiba laptop (such as the Libretto L1
234	  series), say Y.
235
236config ACPI_CUSTOM_DSDT
237	bool "Include Custom DSDT"
238	depends on !STANDALONE
239	default n
240	help
241	  Thist option is to load a custom ACPI DSDT
242	  If you don't know what that is, say N.
243
244config ACPI_CUSTOM_DSDT_FILE
245	string "Custom DSDT Table file to include"
246	depends on ACPI_CUSTOM_DSDT
247	default ""
248	help
249	  Enter the full path name to the file wich includes the AmlCode declaration.
250
251config ACPI_BLACKLIST_YEAR
252	int "Disable ACPI for systems before Jan 1st this year"
253	depends on ACPI_INTERPRETER
254	default 0
255	help
256	  enter a 4-digit year, eg. 2001 to disable ACPI by default
257	  on platforms with DMI BIOS date before January 1st that year.
258	  "acpi=force" can be used to override this mechanism.
259
260	  Enter 0 to disable this mechanism and allow ACPI to
261	  run by default no matter what the year.  (default)
262
263config ACPI_DEBUG
264	bool "Debug Statements"
265	depends on !IA64_SGI_SN
266	default n
267	help
268	  The ACPI driver can optionally report errors with a great deal
269	  of verbosity. Saying Y enables these statements. This will increase
270	  your kernel size by around 50K.
271
272config ACPI_BUS
273	bool
274	depends on !IA64_SGI_SN
275	default y
276
277config ACPI_EC
278	bool
279	depends on X86
280	default y
281	help
282	  This driver is required on some systems for the proper operation of
283	  the battery and thermal drivers.  If you are compiling for a
284	  mobile system, say Y.
285
286config ACPI_POWER
287	bool
288	depends on !IA64_SGI_SN
289	default y
290
291config ACPI_PCI
292	bool
293	depends on !IA64_SGI_SN
294	default PCI
295
296config ACPI_SYSTEM
297	bool
298	depends on !IA64_SGI_SN
299	default y
300	help
301	  This driver will enable your system to shut down using ACPI, and
302	  dump your ACPI DSDT table using /proc/acpi/dsdt.
303
304endif	# ACPI_INTERPRETER
305
306config X86_PM_TIMER
307	bool "Power Management Timer Support"
308	depends on X86
309	depends on ACPI_BOOT && EXPERIMENTAL
310	depends on !X86_64
311	default n
312	help
313	  The Power Management Timer is available on all ACPI-capable,
314	  in most cases even if ACPI is unusable or blacklisted.
315
316	  This timing source is not affected by powermanagement features
317	  like aggressive processor idling, throttling, frequency and/or
318	  voltage scaling, unlike the commonly used Time Stamp Counter
319	  (TSC) timing source.
320
321	  So, if you see messages like 'Losing too many ticks!' in the
322	  kernel logs, and/or you are using this on a notebook which
323	  does not yet have an HPET, you should say "Y" here.
324
325config ACPI_CONTAINER
326	tristate "ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL)"
327	depends on EXPERIMENTAL
328	default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
329	 ---help---
330	 	This is the ACPI generic container driver which supports
331		ACPI0004, PNP0A05 and PNP0A06 devices
332
333config ACPI_HOTPLUG_MEMORY
334	tristate "Memory Hotplug"
335	depends on ACPI
336	depends on MEMORY_HOTPLUG
337	default n
338	help
339	  This driver adds supports for ACPI Memory Hotplug.  This driver
340	  provides support for fielding notifications on ACPI memory
341	  devices (PNP0C80) which represent memory ranges that may be
342	  onlined or offlined during runtime.
343
344	  Enabling this driver assumes that your platform hardware
345	  and firmware have support for hot-plugging physical memory. If
346	  your system does not support physically adding or ripping out
347	  memory DIMMs at some platfrom defined granularity (individually
348	  or as a bank) at runtime, then you need not enable this driver.
349
350	  If one selects "m," this driver can be loaded using the following
351	  command:
352		$>modprobe acpi_memhotplug
353endif	# ACPI
354
355endmenu
356