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