Kconfig 11.8 KB
Newer Older
Linus Torvalds's avatar
Linus Torvalds committed
1 2 3 4
#
# ACPI Configuration
#

Jan Engelhardt's avatar
Jan Engelhardt committed
5
menuconfig ACPI
6
	bool "ACPI (Advanced Configuration and Power Interface) Support"
Linus Torvalds's avatar
Linus Torvalds committed
7 8
	depends on !IA64_HP_SIM
	depends on IA64 || X86
9
	depends on PCI
10
	depends on PM
11
	select PNP
Len Brown's avatar
Len Brown committed
12
	select CPU_IDLE
Linus Torvalds's avatar
Linus Torvalds committed
13
	default y
14
	help
Linus Torvalds's avatar
Linus Torvalds committed
15
	  Advanced Configuration and Power Interface (ACPI) support for 
16
	  Linux requires an ACPI-compliant platform (hardware/firmware),
Linus Torvalds's avatar
Linus Torvalds committed
17 18 19 20 21 22 23 24 25
	  and assumes the presence of OS-directed configuration and power
	  management (OSPM) software.  This option will enlarge your 
	  kernel by about 70K.

	  Linux ACPI provides a robust functional replacement for several 
	  legacy configuration and power management interfaces, including
	  the Plug-and-Play BIOS specification (PnP BIOS), the 
	  MultiProcessor Specification (MPS), and the Advanced Power 
	  Management (APM) specification.  If both ACPI and APM support 
26
	  are configured, ACPI is used.
Linus Torvalds's avatar
Linus Torvalds committed
27

28 29
	  The project home page for the Linux ACPI subsystem is here:
	  <http://www.lesswatts.org/projects/acpi/>
Linus Torvalds's avatar
Linus Torvalds committed
30 31

	  Linux support for ACPI is based on Intel Corporation's ACPI
32 33 34
	  Component Architecture (ACPI CA).  For more information on the
	  ACPI CA, see:
	  <http://acpica.org/>
Linus Torvalds's avatar
Linus Torvalds committed
35

36 37 38
	  ACPI is an open industry specification co-developed by
	  Hewlett-Packard, Intel, Microsoft, Phoenix, and Toshiba.
	  The specification is available at:
Linus Torvalds's avatar
Linus Torvalds committed
39 40
	  <http://www.acpi.info>

Len Brown's avatar
Len Brown committed
41 42
if ACPI

Len Brown's avatar
Len Brown committed
43 44
config ACPI_SLEEP
	bool
45
	depends on SUSPEND || HIBERNATION
Len Brown's avatar
Len Brown committed
46 47
	default y

48
config ACPI_PROCFS
49 50
	bool "Deprecated /proc/acpi files"
	depends on PROC_FS
51
	help
52
	  For backwards compatibility, this option allows
53
	  deprecated /proc/acpi/ files to exist, even when
54 55 56
	  they have been replaced by functions in /sys.
	  The deprecated files (and their replacements) include:

57 58
	  /proc/acpi/processor/*/throttling (/sys/class/thermal/
		cooling_device*/*)
59
	  /proc/acpi/video/*/brightness (/sys/class/backlight/)
60
	  /proc/acpi/thermal_zone/*/* (/sys/class/thermal/)
61 62 63 64
	  This option has no effect on /proc/acpi/ files
	  and functions which do not yet exist in /sys.

	  Say N to delete /proc/acpi/ files that have moved to /sys/
65

66
config ACPI_PROCFS_POWER
67
	bool "Deprecated power /proc/acpi directories"
68 69
	depends on PROC_FS
	default y
70
	help
71
	  For backwards compatibility, this option allows
72
          deprecated power /proc/acpi/ directories to exist, even when
73
          they have been replaced by functions in /sys.
74
          The deprecated directories (and their replacements) include:
75 76
	  /proc/acpi/battery/* (/sys/class/power_supply/*)
	  /proc/acpi/ac_adapter/* (sys/class/power_supply/*)
77
	  This option has no effect on /proc/acpi/ directories
78
	  and functions, which do not yet exist in /sys
79

80 81
	  Say N to delete power /proc/acpi/ directories that have moved to /sys/

82 83 84 85 86 87 88 89 90 91 92
config ACPI_POWER_METER
	tristate "ACPI 4.0 power meter"
	depends on HWMON
	help
	  This driver exposes ACPI 4.0 power meters as hardware monitoring
	  devices.  Say Y (or M) if you have a computer with ACPI 4.0 firmware
	  and a power meter.

	  To compile this driver as a module, choose M here:
	  the module will be called power-meter.

93 94 95 96
config ACPI_SYSFS_POWER
	bool "Future power /sys interface"
	select POWER_SUPPLY
	default y
97
	help
98
	  Say N to disable power /sys interface
99

100 101
config ACPI_EC_DEBUGFS
	tristate "EC read/write access through /sys/kernel/debug/ec"
102
	default n
103 104 105
	help
	  Say N to disable Embedded Controller /sys/kernel/debug interface

106 107
	  Be aware that using this interface can confuse your Embedded
	  Controller in a way that a normal reboot is not enough. You then
Andrea Gelmini's avatar
Andrea Gelmini committed
108
	  have to power off your system, and remove the laptop battery for
109
	  some seconds.
110 111
	  An Embedded Controller typically is available on laptops and reads
	  sensor values like battery state and temperature.
112 113 114
	  The kernel accesses the EC through ACPI parsed code provided by BIOS
	  tables. This option allows to access the EC directly without ACPI
	  code being involved.
115 116 117
	  Thus this option is a debug option that helps to write ACPI drivers
	  and can be used to identify ACPI code or EC firmware bugs.

118 119 120
config ACPI_PROC_EVENT
	bool "Deprecated /proc/acpi/event support"
	depends on PROC_FS
121
	default y
122 123 124
	help
	  A user-space daemon, acpid, typically reads /proc/acpi/event
	  and handles all ACPI-generated events.
125

126 127
	  These events are now delivered to user-space either
	  via the input layer or as netlink events.
128

129
	  This build option enables the old code for legacy
130 131 132
	  user-space implementation.  After some time, this will
	  be moved under CONFIG_ACPI_PROCFS, and then deleted.

133 134 135
	  Say Y here to retain the old behaviour.  Say N if your
	  user-space is newer than kernel 2.6.23 (September 2007).

Linus Torvalds's avatar
Linus Torvalds committed
136 137
config ACPI_AC
	tristate "AC Adapter"
138
	depends on X86
139
	default y
Linus Torvalds's avatar
Linus Torvalds committed
140
	help
141 142
	  This driver supports the AC Adapter object, which indicates
	  whether a system is on AC or not.  If you have a system that can
143
	  switch between A/C and battery, say Y.
Linus Torvalds's avatar
Linus Torvalds committed
144

145 146 147
	  To compile this driver as a module, choose M here:
	  the module will be called ac.

Linus Torvalds's avatar
Linus Torvalds committed
148 149
config ACPI_BATTERY
	tristate "Battery"
150
	depends on X86
151
	default y
Linus Torvalds's avatar
Linus Torvalds committed
152 153 154 155 156
	help
	  This driver adds support for battery information through
	  /proc/acpi/battery. If you have a mobile system with a battery, 
	  say Y.

157 158 159
	  To compile this driver as a module, choose M here:
	  the module will be called battery.

Linus Torvalds's avatar
Linus Torvalds committed
160 161
config ACPI_BUTTON
	tristate "Button"
162
	depends on INPUT
163
	default y
Linus Torvalds's avatar
Linus Torvalds committed
164
	help
165
	  This driver handles events on the power, sleep, and lid buttons.
166 167
	  A daemon reads /proc/acpi/event and perform user-defined actions
	  such as shutting down the system.  This is necessary for
168 169 170 171
	  software-controlled poweroff.

	  To compile this driver as a module, choose M here:
	  the module will be called button.
Linus Torvalds's avatar
Linus Torvalds committed
172 173 174

config ACPI_VIDEO
	tristate "Video"
175
	depends on X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL
176
	depends on INPUT
177
	select THERMAL
Linus Torvalds's avatar
Linus Torvalds committed
178
	help
179
	  This driver implements the ACPI Extensions For Display Adapters
Linus Torvalds's avatar
Linus Torvalds committed
180
	  for integrated graphics devices on motherboard, as specified in
181 182 183 184 185 186
	  ACPI 2.0 Specification, Appendix B.  This supports basic operations
	  such as defining the video POST device, retrieving EDID information,
	  and setting up a video output.

	  To compile this driver as a module, choose M here:
	  the module will be called video.
Linus Torvalds's avatar
Linus Torvalds committed
187 188 189

config ACPI_FAN
	tristate "Fan"
190
	select THERMAL
191
	default y
Linus Torvalds's avatar
Linus Torvalds committed
192
	help
193
	  This driver supports ACPI fan devices, allowing user-mode
Linus Torvalds's avatar
Linus Torvalds committed
194 195
	  applications to perform basic fan control (on, off, status).

196 197 198
	  To compile this driver as a module, choose M here:
	  the module will be called fan.

199
config ACPI_DOCK
200
	bool "Dock"
Len Brown's avatar
Len Brown committed
201
	depends on EXPERIMENTAL
202
	help
203 204
	  This driver supports ACPI-controlled docking stations and removable
	  drive bays such as the IBM Ultrabay and the Dell Module Bay.
205

Linus Torvalds's avatar
Linus Torvalds committed
206 207
config ACPI_PROCESSOR
	tristate "Processor"
208
	select THERMAL
209
	default y
Linus Torvalds's avatar
Linus Torvalds committed
210
	help
211 212
	  This driver installs ACPI as the idle handler for Linux and uses
	  ACPI C2 and C3 processor states to save power on systems that
213
	  support it.  It is required by several flavors of cpufreq
214 215 216 217
	  performance-state drivers.

	  To compile this driver as a module, choose M here:
	  the module will be called processor.
Linus Torvalds's avatar
Linus Torvalds committed
218 219

config ACPI_HOTPLUG_CPU
220 221
	bool
	depends on ACPI_PROCESSOR && HOTPLUG_CPU
Linus Torvalds's avatar
Linus Torvalds committed
222
	select ACPI_CONTAINER
223
	default y
Linus Torvalds's avatar
Linus Torvalds committed
224

225 226 227 228
config ACPI_PROCESSOR_AGGREGATOR
	tristate "Processor Aggregator"
	depends on ACPI_PROCESSOR
	depends on EXPERIMENTAL
Len Brown's avatar
Len Brown committed
229
	depends on X86
230 231
	help
	  ACPI 4.0 defines processor Aggregator, which enables OS to perform
232
	  specific processor configuration and control that applies to all
233 234
	  processors in the platform. Currently only logical processor idling
	  is defined, which is to reduce power consumption. This driver
235
	  supports the new device.
236

Linus Torvalds's avatar
Linus Torvalds committed
237 238 239
config ACPI_THERMAL
	tristate "Thermal Zone"
	depends on ACPI_PROCESSOR
240
	select THERMAL
241
	default y
Linus Torvalds's avatar
Linus Torvalds committed
242
	help
243
	  This driver supports ACPI thermal zones.  Most mobile and
Linus Torvalds's avatar
Linus Torvalds committed
244 245 246 247
	  some desktop systems support ACPI thermal zones.  It is HIGHLY
	  recommended that this option be enabled, as your processor(s)
	  may be damaged without it.

248 249 250
	  To compile this driver as a module, choose M here:
	  the module will be called thermal.

Linus Torvalds's avatar
Linus Torvalds committed
251 252 253
config ACPI_NUMA
	bool "NUMA support"
	depends on NUMA
254
	depends on (X86 || IA64)
Linus Torvalds's avatar
Linus Torvalds committed
255 256
	default y if IA64_GENERIC || IA64_SGI_SN2

257 258 259
config ACPI_CUSTOM_DSDT_FILE
	string "Custom DSDT Table file to include"
	default ""
Linus Torvalds's avatar
Linus Torvalds committed
260 261
	depends on !STANDALONE
	help
262 263 264
	  This option supports a custom DSDT by linking it into the kernel.
	  See Documentation/acpi/dsdt-override.txt

Uwe Zeisberger's avatar
Uwe Zeisberger committed
265 266
	  Enter the full path name to the file which includes the AmlCode
	  declaration.
Linus Torvalds's avatar
Linus Torvalds committed
267

268 269 270 271 272 273
	  If unsure, don't enter a file name.

config ACPI_CUSTOM_DSDT
	bool
	default ACPI_CUSTOM_DSDT_FILE != ""

Linus Torvalds's avatar
Linus Torvalds committed
274
config ACPI_BLACKLIST_YEAR
275
	int "Disable ACPI for systems before Jan 1st this year" if X86_32
Linus Torvalds's avatar
Linus Torvalds committed
276 277
	default 0
	help
278
	  Enter a 4-digit year, e.g., 2001, to disable ACPI by default
Linus Torvalds's avatar
Linus Torvalds committed
279 280 281 282 283 284 285 286 287 288
	  on platforms with DMI BIOS date before January 1st that year.
	  "acpi=force" can be used to override this mechanism.

	  Enter 0 to disable this mechanism and allow ACPI to
	  run by default no matter what the year.  (default)

config ACPI_DEBUG
	bool "Debug Statements"
	default n
	help
289 290 291 292 293 294 295
	  The ACPI subsystem can produce debug output.  Saying Y enables this
	  output and increases the kernel size by around 50K.

	  Use the acpi.debug_layer and acpi.debug_level kernel command-line
	  parameters documented in Documentation/acpi/debug.txt and
	  Documentation/kernel-parameters.txt to control the type and
	  amount of debug output.
Linus Torvalds's avatar
Linus Torvalds committed
296

297 298 299 300 301 302 303 304
config ACPI_DEBUG_FUNC_TRACE
	bool "Additionally enable ACPI function tracing"
	default n
	depends on ACPI_DEBUG
	help
	  ACPI Debug Statements slow down ACPI processing. Function trace
	  is about half of the penalty and is rarely useful.

305 306
config ACPI_PCI_SLOT
	tristate "PCI slot detection driver"
307
	depends on SYSFS
308 309
	default n
	help
310 311 312 313 314 315 316
	  This driver creates entries in /sys/bus/pci/slots/ for all PCI
	  slots in the system.  This can help correlate PCI bus addresses,
	  i.e., segment/bus/device/function tuples, with physical slots in
	  the system.  If you are unsure, say N.

	  To compile this driver as a module, choose M here:
	  the module will be called pci_slot.
317

Linus Torvalds's avatar
Linus Torvalds committed
318
config X86_PM_TIMER
319
	bool "Power Management Timer Support" if EMBEDDED
Linus Torvalds's avatar
Linus Torvalds committed
320
	depends on X86
321
	default y
Linus Torvalds's avatar
Linus Torvalds committed
322 323 324 325
	help
	  The Power Management Timer is available on all ACPI-capable,
	  in most cases even if ACPI is unusable or blacklisted.

Matt LaPlante's avatar
Matt LaPlante committed
326
	  This timing source is not affected by power management features
Linus Torvalds's avatar
Linus Torvalds committed
327 328 329 330
	  like aggressive processor idling, throttling, frequency and/or
	  voltage scaling, unlike the commonly used Time Stamp Counter
	  (TSC) timing source.

331 332
	  You should nearly always say Y here because many modern
	  systems require this timer. 
Linus Torvalds's avatar
Linus Torvalds committed
333 334

config ACPI_CONTAINER
335
	tristate "Container and Module Devices (EXPERIMENTAL)"
Linus Torvalds's avatar
Linus Torvalds committed
336 337
	depends on EXPERIMENTAL
	default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
338 339 340
	help
	  This driver supports ACPI Container and Module devices (IDs
	  ACPI0004, PNP0A05, and PNP0A06).
341

342 343 344 345
	  This helps support hotplug of nodes, CPUs, and memory.

	  To compile this driver as a module, choose M here:
	  the module will be called container.
Linus Torvalds's avatar
Linus Torvalds committed
346 347 348

config ACPI_HOTPLUG_MEMORY
	tristate "Memory Hotplug"
349
	depends on MEMORY_HOTPLUG
Linus Torvalds's avatar
Linus Torvalds committed
350 351
	default n
	help
352 353 354 355
	  This driver supports ACPI memory hotplug.  The driver
	  fields notifications on ACPI memory devices (PNP0C80),
	  which represent memory ranges that may be onlined or
	  offlined during runtime.
Linus Torvalds's avatar
Linus Torvalds committed
356

357 358 359
	  If your hardware and firmware do not support adding or
	  removing memory devices at runtime, you need not enable
	  this driver.
Linus Torvalds's avatar
Linus Torvalds committed
360

361 362
	  To compile this driver as a module, choose M here:
	  the module will be called acpi_memhotplug.
363 364

config ACPI_SBS
365
	tristate "Smart Battery System"
366
	depends on X86
367
	help
368
	  This driver supports the Smart Battery System, another
369
	  type of access to battery information, found on some laptops.
370

371 372 373
	  To compile this driver as a module, choose M here:
	  the modules will be called sbs and sbshc.

374 375 376 377 378 379 380
config ACPI_HED
	tristate "Hardware Error Device"
	help
	  This driver supports the Hardware Error Device (PNP0C33),
	  which is used to report some hardware errors notified via
	  SCI, mainly the corrected errors.

381 382
source "drivers/acpi/apei/Kconfig"

Linus Torvalds's avatar
Linus Torvalds committed
383
endif	# ACPI