1b6695bd0SMike Smith.\" 2b6695bd0SMike Smith.\" Copyright (c) 2001 Michael Smith 3b6695bd0SMike Smith.\" All rights reserved. 4b6695bd0SMike Smith.\" 5b6695bd0SMike Smith.\" Redistribution and use in source and binary forms, with or without 6b6695bd0SMike Smith.\" modification, are permitted provided that the following conditions 7b6695bd0SMike Smith.\" are met: 8b6695bd0SMike Smith.\" 1. Redistributions of source code must retain the above copyright 9b6695bd0SMike Smith.\" notice, this list of conditions and the following disclaimer. 10b6695bd0SMike Smith.\" 2. Redistributions in binary form must reproduce the above copyright 11b6695bd0SMike Smith.\" notice, this list of conditions and the following disclaimer in the 12b6695bd0SMike Smith.\" documentation and/or other materials provided with the distribution. 13b6695bd0SMike Smith.\" 14b6695bd0SMike Smith.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15b6695bd0SMike Smith.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16b6695bd0SMike Smith.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17b6695bd0SMike Smith.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18b6695bd0SMike Smith.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19b6695bd0SMike Smith.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20b6695bd0SMike Smith.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21b6695bd0SMike Smith.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22b6695bd0SMike Smith.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23b6695bd0SMike Smith.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24b6695bd0SMike Smith.\" SUCH DAMAGE. 25b6695bd0SMike Smith.\" 26b6695bd0SMike Smith.\" $FreeBSD$ 27b6695bd0SMike Smith.\" 28b6695bd0SMike Smith.Dd July 2, 2001 29b6695bd0SMike Smith.Dt ACPI 4 30b6695bd0SMike Smith.Os 31b6695bd0SMike Smith.Sh NAME 32b6695bd0SMike Smith.Nm acpi 33b6695bd0SMike Smith.Nd Advanced Configuration and Power Management support 34b6695bd0SMike Smith.Sh SYNOPSIS 35b6695bd0SMike Smith.Cd device acpica 36b6695bd0SMike Smith.Pp 37b6695bd0SMike Smith.Cd options ACPI_DEBUG 38b6695bd0SMike Smith.Sh DESCRIPTION 39b6695bd0SMike SmithThe 40b6695bd0SMike Smith.Nm 41b6695bd0SMike Smithdriver provides support for the Intel/Microsoft/Compaq/Toshiba ACPI 42b6695bd0SMike Smithstandard. 43b6695bd0SMike SmithThis support includes platform hardware discovery (superseding the 44b6695bd0SMike SmithPnP and PCI BIOS), as well as power management (superseding APM) and 45b6695bd0SMike Smithother features. 46b6695bd0SMike SmithACPI core support is provided by the ACPI CA reference implementation 47b6695bd0SMike Smithfrom Intel. 48b6695bd0SMike Smith.Sh ENVIRONMENT 49b6695bd0SMike SmithThis support is still experimental, and thus there are many debugging 50b6695bd0SMike Smithand tuning options which are managed via the kernel environment 5187b6284aSRuslan Ermilovspace, and set in the 5287b6284aSRuslan Ermilov.Xr loader 8 5387b6284aSRuslan Ermilovbefore booting the kernel. 54b6695bd0SMike Smith.Pp 55b6695bd0SMike SmithDebugging is separated between layers and levels, where a layer is 56b6695bd0SMike Smitha portion of the ACPI subsystem, and a level is a particular kind 57b6695bd0SMike Smithof debugging output. 58b6695bd0SMike Smith.Pp 59b6695bd0SMike SmithBoth layers and levels are specified as a whitespace-separated list of 60b6695bd0SMike Smithtokens, with layers listed in 61b6695bd0SMike Smith.Va debug.acpi.layer 62b6695bd0SMike Smithand levels in 63b6695bd0SMike Smith.Va debug.acpi.level . 64b6695bd0SMike SmithThe supported layers are: 6587b6284aSRuslan Ermilov.Pp 6687b6284aSRuslan Ermilov.Bl -item -offset indent -compact 67b6695bd0SMike Smith.It 6887b6284aSRuslan Ermilov.Li ACPI_UTILITIES 69b6695bd0SMike Smith.It 7087b6284aSRuslan Ermilov.Li ACPI_HARDWARE 71b6695bd0SMike Smith.It 7287b6284aSRuslan Ermilov.Li ACPI_EVENTS 73b6695bd0SMike Smith.It 7487b6284aSRuslan Ermilov.Li ACPI_TABLES 75b6695bd0SMike Smith.It 7687b6284aSRuslan Ermilov.Li ACPI_NAMESPACE 77b6695bd0SMike Smith.It 7887b6284aSRuslan Ermilov.Li ACPI_PARSER 79b6695bd0SMike Smith.It 8087b6284aSRuslan Ermilov.Li ACPI_DISPATCHER 81b6695bd0SMike Smith.It 8287b6284aSRuslan Ermilov.Li ACPI_EXECUTER 83b6695bd0SMike Smith.It 8487b6284aSRuslan Ermilov.Li ACPI_RESOURCES 85b6695bd0SMike Smith.It 8687b6284aSRuslan Ermilov.Li ACPI_POWER 87b6695bd0SMike Smith.It 8887b6284aSRuslan Ermilov.Li ACPI_BUS 89b6695bd0SMike Smith.It 9087b6284aSRuslan Ermilov.Li ACPI_POWER 91b6695bd0SMike Smith.It 9287b6284aSRuslan Ermilov.Li ACPI_EC 93b6695bd0SMike Smith.It 9487b6284aSRuslan Ermilov.Li ACPI_PROCESSOR 95b6695bd0SMike Smith.It 9687b6284aSRuslan Ermilov.Li ACPI_AC_ADAPTER 97b6695bd0SMike Smith.It 9887b6284aSRuslan Ermilov.Li ACPI_BATTERY 99b6695bd0SMike Smith.It 10087b6284aSRuslan Ermilov.Li ACPI_BUTTON 101b6695bd0SMike Smith.It 10287b6284aSRuslan Ermilov.Li ACPI_SYSTEM 103b6695bd0SMike Smith.It 10487b6284aSRuslan Ermilov.Li ACPI_THERMAL 105b6695bd0SMike Smith.It 10687b6284aSRuslan Ermilov.Li ACPI_DEBUGGER 107b6695bd0SMike Smith.It 10887b6284aSRuslan Ermilov.Li ACPI_OS_SERVICES 109b6695bd0SMike Smith.It 11087b6284aSRuslan Ermilov.Li ACPI_ALL_COMPONENTS 111b6695bd0SMike Smith.El 11287b6284aSRuslan Ermilov.Pp 113b6695bd0SMike SmithThe supported levels are: 11487b6284aSRuslan Ermilov.Pp 11587b6284aSRuslan Ermilov.Bl -item -offset indent -compact 116b6695bd0SMike Smith.It 11787b6284aSRuslan Ermilov.Li ACPI_OK 118b6695bd0SMike Smith.It 11987b6284aSRuslan Ermilov.Li ACPI_INFO 120b6695bd0SMike Smith.It 12187b6284aSRuslan Ermilov.Li ACPI_WARN 122b6695bd0SMike Smith.It 12387b6284aSRuslan Ermilov.Li ACPI_ERROR 124b6695bd0SMike Smith.It 12587b6284aSRuslan Ermilov.Li ACPI_FATAL 126b6695bd0SMike Smith.It 12787b6284aSRuslan Ermilov.Li ACPI_DEBUG_OBJECT 128b6695bd0SMike Smith.It 12987b6284aSRuslan Ermilov.Li ACPI_ALL 130b6695bd0SMike Smith.It 13187b6284aSRuslan Ermilov.Li TRACE_THREADS 132b6695bd0SMike Smith.It 13387b6284aSRuslan Ermilov.Li TRACE_PARSE 134b6695bd0SMike Smith.It 13587b6284aSRuslan Ermilov.Li TRACE_DISPATCH 136b6695bd0SMike Smith.It 13787b6284aSRuslan Ermilov.Li TRACE_LOAD 138b6695bd0SMike Smith.It 13987b6284aSRuslan Ermilov.Li TRACE_EXEC 140b6695bd0SMike Smith.It 14187b6284aSRuslan Ermilov.Li TRACE_NAMES 142b6695bd0SMike Smith.It 14387b6284aSRuslan Ermilov.Li TRACE_OPREGION 144b6695bd0SMike Smith.It 14587b6284aSRuslan Ermilov.Li TRACE_BFIELD 146b6695bd0SMike Smith.It 14787b6284aSRuslan Ermilov.Li TRACE_TRASH 148b6695bd0SMike Smith.It 14987b6284aSRuslan Ermilov.Li TRACE_TABLES 150b6695bd0SMike Smith.It 15187b6284aSRuslan Ermilov.Li TRACE_FUNCTIONS 152b6695bd0SMike Smith.It 15387b6284aSRuslan Ermilov.Li TRACE_VALUES 154b6695bd0SMike Smith.It 15587b6284aSRuslan Ermilov.Li TRACE_OBJECTS 156b6695bd0SMike Smith.It 15787b6284aSRuslan Ermilov.Li TRACE_ALLOCATIONS 158b6695bd0SMike Smith.It 15987b6284aSRuslan Ermilov.Li TRACE_RESOURCES 160b6695bd0SMike Smith.It 16187b6284aSRuslan Ermilov.Li TRACE_IO 162b6695bd0SMike Smith.It 16387b6284aSRuslan Ermilov.Li TRACE_INTERRUPTS 164b6695bd0SMike Smith.It 16587b6284aSRuslan Ermilov.Li TRACE_USER_REQUESTS 166b6695bd0SMike Smith.It 16787b6284aSRuslan Ermilov.Li TRACE_PACKAGE 168b6695bd0SMike Smith.It 16987b6284aSRuslan Ermilov.Li TRACE_MUTEX 170b6695bd0SMike Smith.It 17187b6284aSRuslan Ermilov.Li TRACE_INIT 172b6695bd0SMike Smith.It 17387b6284aSRuslan Ermilov.Li TRACE_ALL 174b6695bd0SMike Smith.It 17587b6284aSRuslan Ermilov.Li VERBOSE_AML_DISASSEMBLE 176b6695bd0SMike Smith.It 17787b6284aSRuslan Ermilov.Li VERBOSE_INFO 178b6695bd0SMike Smith.It 17987b6284aSRuslan Ermilov.Li VERBOSE_TABLES 180b6695bd0SMike Smith.It 18187b6284aSRuslan Ermilov.Li VERBOSE_EVENTS 182b6695bd0SMike Smith.It 18387b6284aSRuslan Ermilov.Li VERBOSE_ALL 184b6695bd0SMike Smith.El 185b6695bd0SMike Smith.Pp 186b6695bd0SMike SmithSelection of the appropriate layer and level values is important 187b6695bd0SMike Smithto avoid massive amounts of debugging output. 188b6695bd0SMike SmithCheck the code to see which you need. 189b6695bd0SMike Smith.Pp 190b6695bd0SMike SmithDebugging output by the ACPI CA subsystem is prefixed with the 191b6695bd0SMike Smithmodule name in lowercase, followed by a source line number. 19287b6284aSRuslan ErmilovOutput from the 19387b6284aSRuslan Ermilov.Fx Ns -local 19487b6284aSRuslan Ermilovcode follows the same format, but 195b6695bd0SMike Smiththe module name is uppercased. 196b6695bd0SMike Smith.Pp 197b6695bd0SMike SmithThe 198b6695bd0SMike Smith.Nm 199b6695bd0SMike Smithdriver comprises a set of drivers, which may be selectively disabled 200b6695bd0SMike Smithin case of problems. 201b6695bd0SMike SmithTo disable a sub-driver, list it in the kernel 202b6695bd0SMike Smithenvironment variable 203b6695bd0SMike Smith.Va debug.acpi.disable . 204b6695bd0SMike Smith.Pp 205b6695bd0SMike SmithACPI sub-devices and features that can be disabled: 206b6695bd0SMike Smith.Bl -tag -width processor 20787b6284aSRuslan Ermilov.It Li bus 208b6695bd0SMike Smith.Pq Vt feature 209b6695bd0SMike SmithProbes and attaches subdevices. 210b6695bd0SMike SmithDisabling will avoid scanning the ACPI namespace entirely. 21187b6284aSRuslan Ermilov.It Li children 212b6695bd0SMike Smith.Pq Vt feature 213b6695bd0SMike SmithAttaches standard ACPI sub-drivers and devices enumerated in the 214b6695bd0SMike SmithACPI namespace. 215b6695bd0SMike SmithDisabling this has a similar effect to disabling 21687b6284aSRuslan Ermilov.Dq Li bus , 217b6695bd0SMike Smithexcept that the 218b6695bd0SMike SmithACPI namespace will still be scanned. 21987b6284aSRuslan Ermilov.It Li button 220b6695bd0SMike Smith.Pq Vt device 221b6695bd0SMike SmithSupports ACPI button devices (typically power and sleep buttons). 22287b6284aSRuslan Ermilov.It Li ec 223b6695bd0SMike Smith.Pq Vt device 224b6695bd0SMike SmithSupports the ACPI Embedded Controller interface, used to 225b6695bd0SMike Smithcommunicate with embedded platform controllers. 22687b6284aSRuslan Ermilov.It Li isa 227b6695bd0SMike Smith.Pq Vt device 228b6695bd0SMike SmithSupports an ISA bus bridge defined in the ACPI namespace, 229b6695bd0SMike Smithtypically as a child of a PCI bus. 23087b6284aSRuslan Ermilov.It Li lid 231b6695bd0SMike Smith.Pq Vt device 232b6695bd0SMike SmithSupports an ACPI laptop lid switch, which typically puts a 233b6695bd0SMike Smithsystem to sleep. 23487b6284aSRuslan Ermilov.It Li pci 235b6695bd0SMike Smith.Pq Vt device 236b6695bd0SMike SmithSupports Host to PCI bridges. 23787b6284aSRuslan Ermilov.It Li processor 238b6695bd0SMike Smith.Pq Vt device 239b6695bd0SMike SmithSupports CPU power-saving and speed-setting functions. 24087b6284aSRuslan Ermilov.It Li thermal 241b6695bd0SMike Smith.Pq Vt device 242b6695bd0SMike SmithSupports system cooling and heat management. 24387b6284aSRuslan Ermilov.It Li timer 244b6695bd0SMike Smith.Pq Vt device 245b6695bd0SMike SmithImplements a timecounter using the ACPI fixed-frequency timer. 246b6695bd0SMike Smith.El 247b6695bd0SMike Smith.Pp 248b6695bd0SMike SmithIt is also possible to avoid portions of the ACPI namespace which 249b6695bd0SMike Smithmay be causing problems, by listing the full path of the root of 250b6695bd0SMike Smiththe region to be avoided in the kernel environment variable 251b6695bd0SMike Smith.Va debug.acpi.avoid . 252b6695bd0SMike SmithThe object and all of its children will be ignored during the 25387b6284aSRuslan Ermilovbus/children scan of the namespace. 25487b6284aSRuslan ErmilovThe ACPI CA code will still 255b6695bd0SMike Smithknow about the avoided region. 256b6695bd0SMike Smith.Sh COMPATIBILITY 257b6695bd0SMike SmithACPI is only found/supported on Intel platforms (i386/IA32 and IA64). 258b6695bd0SMike Smith.Sh SEE ALSO 259b6695bd0SMike Smith.Xr config 8 , 260b6695bd0SMike Smith.Xr acpi 9 26187b6284aSRuslan Ermilov.Sh AUTHORS 26287b6284aSRuslan Ermilov.An -nosplit 263b6695bd0SMike SmithThe ACPI CA subsystem is developed and maintained by 264b6695bd0SMike SmithIntel Architecture Labs. 265b6695bd0SMike Smith.Pp 266b6695bd0SMike SmithThe following people made notable contributions to the ACPI subsystem 267b6695bd0SMike Smithin 268b6695bd0SMike Smith.Fx : 26987b6284aSRuslan Ermilov.An Michael Smith Aq msmith@FreeBSD.org , 27087b6284aSRuslan Ermilov.An Takanori Watanabe Aq takawata@jp.FreeBSD.org , 27187b6284aSRuslan Ermilov.An Mitsuru IWASAKI Aq iwasaki@jp.FreeBSD.org , 272b6695bd0SMike Smith.An Munehiro Matsuda , 273b6695bd0SMike Smiththe ACPI-jp mailing list at 27487b6284aSRuslan Ermilov.Aq acpi-jp@jp.FreeBSD.org , 275b6695bd0SMike Smithand many other contributors. 276b6695bd0SMike Smith.Pp 277b6695bd0SMike SmithThis manual page was written by 27887b6284aSRuslan Ermilov.An Michael Smith Aq msmith@FreeBSD.org . 279b6695bd0SMike Smith.Sh BUGS 280b6695bd0SMike SmithThe kernel device is 281b6695bd0SMike Smith.Cd device acpica 28287b6284aSRuslan Ermilovfor historical reasons. 28387b6284aSRuslan ErmilovIt will change to 284b6695bd0SMike Smith.Cd device acpi 285b6695bd0SMike Smithat some time in the future. 286