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