2001-07-03 07:45:04 +00:00
|
|
|
.\"
|
|
|
|
.\" Copyright (c) 2001 Michael Smith
|
|
|
|
.\" All rights reserved.
|
|
|
|
.\"
|
|
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
|
|
.\" modification, are permitted provided that the following conditions
|
|
|
|
.\" are met:
|
|
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
|
|
.\"
|
|
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
|
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
|
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
|
|
.\" SUCH DAMAGE.
|
|
|
|
.\"
|
|
|
|
.\" $FreeBSD$
|
|
|
|
.\"
|
2004-06-30 20:49:34 +00:00
|
|
|
.Dd June 30, 2004
|
2001-07-03 07:45:04 +00:00
|
|
|
.Dt ACPI 4
|
|
|
|
.Os
|
|
|
|
.Sh NAME
|
|
|
|
.Nm acpi
|
|
|
|
.Nd Advanced Configuration and Power Management support
|
|
|
|
.Sh SYNOPSIS
|
2003-06-02 15:02:06 +00:00
|
|
|
.Cd "device acpi"
|
2001-07-03 07:45:04 +00:00
|
|
|
.Pp
|
2003-06-02 15:02:06 +00:00
|
|
|
.Cd "options ACPI_DEBUG"
|
2001-07-03 07:45:04 +00:00
|
|
|
.Sh DESCRIPTION
|
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
driver provides support for the Intel/Microsoft/Compaq/Toshiba ACPI
|
|
|
|
standard.
|
|
|
|
This support includes platform hardware discovery (superseding the
|
|
|
|
PnP and PCI BIOS), as well as power management (superseding APM) and
|
|
|
|
other features.
|
|
|
|
ACPI core support is provided by the ACPI CA reference implementation
|
|
|
|
from Intel.
|
2001-08-26 22:51:52 +00:00
|
|
|
.Pp
|
|
|
|
Note that the
|
|
|
|
.Nm
|
|
|
|
driver is automatically loaded by the bootloader, and should not normally
|
|
|
|
be compiled into the kernel.
|
2001-07-03 07:45:04 +00:00
|
|
|
.Sh ENVIRONMENT
|
|
|
|
This support is still experimental, and thus there are many debugging
|
2004-03-03 03:02:17 +00:00
|
|
|
and tuning options which are managed via the kernel environment.
|
|
|
|
Tunables can be set at the
|
2001-07-06 08:10:59 +00:00
|
|
|
.Xr loader 8
|
2004-03-03 03:02:17 +00:00
|
|
|
prompt before booting the kernel or stored in
|
|
|
|
.Pa /boot/loader.conf .
|
2001-07-03 07:45:04 +00:00
|
|
|
.Pp
|
|
|
|
Debugging is separated between layers and levels, where a layer is
|
|
|
|
a portion of the ACPI subsystem, and a level is a particular kind
|
|
|
|
of debugging output.
|
|
|
|
.Pp
|
|
|
|
Both layers and levels are specified as a whitespace-separated list of
|
|
|
|
tokens, with layers listed in
|
|
|
|
.Va debug.acpi.layer
|
|
|
|
and levels in
|
|
|
|
.Va debug.acpi.level .
|
|
|
|
The supported layers are:
|
2001-07-06 08:10:59 +00:00
|
|
|
.Pp
|
|
|
|
.Bl -item -offset indent -compact
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-07-06 08:10:59 +00:00
|
|
|
.Li ACPI_UTILITIES
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-07-06 08:10:59 +00:00
|
|
|
.Li ACPI_HARDWARE
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-07-06 08:10:59 +00:00
|
|
|
.Li ACPI_EVENTS
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-07-06 08:10:59 +00:00
|
|
|
.Li ACPI_TABLES
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-07-06 08:10:59 +00:00
|
|
|
.Li ACPI_NAMESPACE
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-07-06 08:10:59 +00:00
|
|
|
.Li ACPI_PARSER
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-07-06 08:10:59 +00:00
|
|
|
.Li ACPI_DISPATCHER
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-07-06 08:10:59 +00:00
|
|
|
.Li ACPI_EXECUTER
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-07-06 08:10:59 +00:00
|
|
|
.Li ACPI_RESOURCES
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_CA_DEBUGGER
|
2001-08-26 22:51:52 +00:00
|
|
|
.It
|
|
|
|
.Li ACPI_OS_SERVICES
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_CA_DISASSEMBLER
|
|
|
|
.It
|
|
|
|
.Li ACPI_ALL_COMPONENTS
|
|
|
|
.It
|
2004-03-03 03:02:17 +00:00
|
|
|
.Li ACPI_AC_ADAPTER
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2004-03-03 03:02:17 +00:00
|
|
|
.Li ACPI_BATTERY
|
2001-08-26 22:51:52 +00:00
|
|
|
.It
|
2004-03-03 03:02:17 +00:00
|
|
|
.Li ACPI_BUS
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2004-03-03 03:02:17 +00:00
|
|
|
.Li ACPI_BUTTON
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2004-03-03 03:02:17 +00:00
|
|
|
.Li ACPI_EC
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2004-03-03 03:02:17 +00:00
|
|
|
.Li ACPI_FAN
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2004-12-13 23:31:46 +00:00
|
|
|
.Li ACPI_OEM
|
|
|
|
.It
|
2004-03-03 03:02:17 +00:00
|
|
|
.Li ACPI_POWER
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_PROCESSOR
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-07-06 08:10:59 +00:00
|
|
|
.Li ACPI_THERMAL
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2004-03-03 03:02:17 +00:00
|
|
|
.Li ACPI_TIMER
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_ALL_DRIVERS
|
2001-07-03 07:45:04 +00:00
|
|
|
.El
|
2001-07-06 08:10:59 +00:00
|
|
|
.Pp
|
2001-07-03 07:45:04 +00:00
|
|
|
The supported levels are:
|
2001-07-06 08:10:59 +00:00
|
|
|
.Pp
|
|
|
|
.Bl -item -offset indent -compact
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_LV_ERROR
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_WARN
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_LV_INIT
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_DEBUG_OBJECT
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_LV_INFO
|
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_ALL_EXCEPTIONS
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_LV_INIT_NAMES
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_PARSE
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_LOAD
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_LV_DISPATCH
|
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_EXEC
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_NAMES
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_OPREGION
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_BFIELD
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_TABLES
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_VALUES
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_OBJECTS
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_RESOURCES
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_USER_REQUESTS
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_PACKAGE
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_LV_VERBOSITY1
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_LV_ALLOCATIONS
|
|
|
|
.It
|
|
|
|
.Li ACPI_LV_FUNCTIONS
|
|
|
|
.It
|
|
|
|
.Li ACPI_LV_OPTIMIZATIONS
|
|
|
|
.It
|
|
|
|
.Li ACPI_LV_VERBOSITY2
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2001-08-26 22:51:52 +00:00
|
|
|
.Li ACPI_LV_ALL
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_LV_MUTEX
|
|
|
|
.It
|
|
|
|
.Li ACPI_LV_THREADS
|
|
|
|
.It
|
|
|
|
.Li ACPI_LV_IO
|
|
|
|
.It
|
|
|
|
.Li ACPI_LV_INTERRUPTS
|
|
|
|
.It
|
|
|
|
.Li ACPI_LV_VERBOSITY3
|
|
|
|
.It
|
|
|
|
.Li ACPI_LV_AML_DISASSEMBLE
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_LV_VERBOSE_INFO
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_LV_FULL_TABLES
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_LV_EVENTS
|
2001-07-03 07:45:04 +00:00
|
|
|
.It
|
2003-09-26 04:32:40 +00:00
|
|
|
.Li ACPI_LV_VERBOSE
|
2001-07-03 07:45:04 +00:00
|
|
|
.El
|
|
|
|
.Pp
|
|
|
|
Selection of the appropriate layer and level values is important
|
|
|
|
to avoid massive amounts of debugging output.
|
|
|
|
Check the code to see which you need.
|
|
|
|
.Pp
|
|
|
|
Debugging output by the ACPI CA subsystem is prefixed with the
|
|
|
|
module name in lowercase, followed by a source line number.
|
2001-07-06 08:10:59 +00:00
|
|
|
Output from the
|
|
|
|
.Fx Ns -local
|
|
|
|
code follows the same format, but
|
2001-07-03 07:45:04 +00:00
|
|
|
the module name is uppercased.
|
|
|
|
.Pp
|
2004-06-30 19:54:29 +00:00
|
|
|
For machines known not to work with
|
|
|
|
.Nm
|
2004-06-30 20:49:34 +00:00
|
|
|
enabled, there is a BIOS blacklist.
|
|
|
|
Currently, the blacklist only controls whether
|
2004-06-30 19:54:29 +00:00
|
|
|
.Nm
|
2004-06-30 20:49:34 +00:00
|
|
|
should be disabled or not.
|
2004-07-07 19:57:16 +00:00
|
|
|
In the future, it will have more granularity to control features (the
|
2004-06-30 20:49:34 +00:00
|
|
|
infrastructure for that is already there).
|
2004-06-30 19:54:29 +00:00
|
|
|
.Pp
|
|
|
|
To enable
|
|
|
|
.Nm
|
2004-07-07 19:57:16 +00:00
|
|
|
(for debugging purposes, etc.) on machines that are on the blacklist, set the
|
2004-06-30 20:49:34 +00:00
|
|
|
kernel environment variable
|
2004-06-30 19:54:29 +00:00
|
|
|
.Va hint.acpi.0.disabled
|
2004-06-30 20:49:34 +00:00
|
|
|
to 0.
|
2004-07-07 19:57:16 +00:00
|
|
|
Before trying this, consider updating your BIOS to a more recent version that
|
2004-06-30 20:49:34 +00:00
|
|
|
may be compatible with ACPI.
|
2004-06-30 19:54:29 +00:00
|
|
|
.Pp
|
2003-05-18 04:21:38 +00:00
|
|
|
To disable the
|
|
|
|
.Nm
|
|
|
|
driver completely, set the kernel environment variable
|
|
|
|
.Va hint.acpi.0.disabled
|
2004-02-18 05:20:31 +00:00
|
|
|
to 1.
|
|
|
|
.Pp
|
2003-05-18 04:21:38 +00:00
|
|
|
Some i386 machines totally fail to operate with some or all of ACPI disabled.
|
|
|
|
Other i386 machines fail with ACPI enabled.
|
|
|
|
Non-i386 platforms do not support operating systems which do not use ACPI.
|
|
|
|
Disabling all or part of ACPI on non-i386 platforms may result in a
|
|
|
|
non-functional system.
|
|
|
|
.Pp
|
2001-07-03 07:45:04 +00:00
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
driver comprises a set of drivers, which may be selectively disabled
|
|
|
|
in case of problems.
|
|
|
|
To disable a sub-driver, list it in the kernel
|
|
|
|
environment variable
|
2004-03-03 03:02:17 +00:00
|
|
|
.Va debug.acpi.disabled .
|
2004-02-22 00:30:43 +00:00
|
|
|
Multiple entries can be listed, separated by a space.
|
2001-07-03 07:45:04 +00:00
|
|
|
.Pp
|
|
|
|
ACPI sub-devices and features that can be disabled:
|
2004-02-22 00:50:00 +00:00
|
|
|
.Bl -tag -width sysresource
|
2004-02-22 00:30:43 +00:00
|
|
|
.It Li all
|
2004-02-22 00:50:00 +00:00
|
|
|
Disable all ACPI features and devices.
|
2004-04-20 17:45:47 +00:00
|
|
|
.It Li acad
|
|
|
|
.Pq Vt device
|
|
|
|
Supports AC adapter.
|
2001-07-06 08:10:59 +00:00
|
|
|
.It Li bus
|
2001-07-03 07:45:04 +00:00
|
|
|
.Pq Vt feature
|
|
|
|
Probes and attaches subdevices.
|
|
|
|
Disabling will avoid scanning the ACPI namespace entirely.
|
2001-07-06 08:10:59 +00:00
|
|
|
.It Li children
|
2001-07-03 07:45:04 +00:00
|
|
|
.Pq Vt feature
|
|
|
|
Attaches standard ACPI sub-drivers and devices enumerated in the
|
|
|
|
ACPI namespace.
|
|
|
|
Disabling this has a similar effect to disabling
|
2001-07-06 08:10:59 +00:00
|
|
|
.Dq Li bus ,
|
2001-07-03 07:45:04 +00:00
|
|
|
except that the
|
|
|
|
ACPI namespace will still be scanned.
|
2001-07-06 08:10:59 +00:00
|
|
|
.It Li button
|
2001-07-03 07:45:04 +00:00
|
|
|
.Pq Vt device
|
2004-06-16 08:33:57 +00:00
|
|
|
Supports ACPI button devices (typically power and sleep buttons).
|
2004-02-22 00:30:43 +00:00
|
|
|
.It Li cmbat
|
|
|
|
.Pq Vt device
|
|
|
|
Control-method batteries device.
|
|
|
|
.It Li cpu
|
|
|
|
.Pq Vt device
|
|
|
|
Supports CPU power-saving and speed-setting functions.
|
2001-07-06 08:10:59 +00:00
|
|
|
.It Li ec
|
2001-07-03 07:45:04 +00:00
|
|
|
.Pq Vt device
|
2004-02-22 00:30:43 +00:00
|
|
|
Supports the ACPI Embedded Controller interface, used to communicate
|
|
|
|
with embedded platform controllers.
|
2001-07-06 08:10:59 +00:00
|
|
|
.It Li isa
|
2001-07-03 07:45:04 +00:00
|
|
|
.Pq Vt device
|
|
|
|
Supports an ISA bus bridge defined in the ACPI namespace,
|
|
|
|
typically as a child of a PCI bus.
|
2001-07-06 08:10:59 +00:00
|
|
|
.It Li lid
|
2001-07-03 07:45:04 +00:00
|
|
|
.Pq Vt device
|
|
|
|
Supports an ACPI laptop lid switch, which typically puts a
|
|
|
|
system to sleep.
|
2004-03-04 04:42:59 +00:00
|
|
|
.It Li quirks
|
|
|
|
.Pq Vt feature
|
2004-06-16 08:33:57 +00:00
|
|
|
Do not honor quirks.
|
2004-03-04 04:42:59 +00:00
|
|
|
Quirks automatically disable ACPI functionality based on the XSDT table's
|
|
|
|
OEM vendor name and revision date.
|
2001-07-06 08:10:59 +00:00
|
|
|
.It Li pci
|
2001-07-03 07:45:04 +00:00
|
|
|
.Pq Vt device
|
|
|
|
Supports Host to PCI bridges.
|
2004-02-22 00:30:43 +00:00
|
|
|
.It Li pci_link
|
2004-02-22 00:50:00 +00:00
|
|
|
.Pq Vt feature
|
2004-02-22 00:30:43 +00:00
|
|
|
Performs PCI interrupt routing.
|
|
|
|
.It Li sysresource
|
|
|
|
.Pq Vt device
|
|
|
|
Pseudo-devices containing resources which ACPI claims.
|
2001-07-06 08:10:59 +00:00
|
|
|
.It Li thermal
|
2001-07-03 07:45:04 +00:00
|
|
|
.Pq Vt device
|
|
|
|
Supports system cooling and heat management.
|
2001-07-06 08:10:59 +00:00
|
|
|
.It Li timer
|
2001-07-03 07:45:04 +00:00
|
|
|
.Pq Vt device
|
|
|
|
Implements a timecounter using the ACPI fixed-frequency timer.
|
|
|
|
.El
|
|
|
|
.Pp
|
|
|
|
It is also possible to avoid portions of the ACPI namespace which
|
|
|
|
may be causing problems, by listing the full path of the root of
|
|
|
|
the region to be avoided in the kernel environment variable
|
|
|
|
.Va debug.acpi.avoid .
|
|
|
|
The object and all of its children will be ignored during the
|
2001-07-06 08:10:59 +00:00
|
|
|
bus/children scan of the namespace.
|
|
|
|
The ACPI CA code will still
|
2001-07-03 07:45:04 +00:00
|
|
|
know about the avoided region.
|
2002-07-05 15:36:03 +00:00
|
|
|
.Sh OVERRIDING YOUR BIOS BYTECODE
|
2004-10-05 20:42:16 +00:00
|
|
|
ACPI interprets bytecode named AML
|
|
|
|
(ACPI Machine Language)
|
|
|
|
provided by the BIOS vendor as a memory image at boot time.
|
|
|
|
Sometimes, the AML code contains a bug that does not appear when parsed
|
|
|
|
by the Microsoft implementation.
|
|
|
|
.Fx
|
|
|
|
provides a way to override it with your own AML code to workaround
|
|
|
|
or debug such problems.
|
|
|
|
Note that all AML in your DSDT and any SSDT tables is overridden.
|
2002-07-05 15:36:03 +00:00
|
|
|
.Pp
|
2004-10-05 20:42:16 +00:00
|
|
|
In order to load your AML code, you must edit
|
2002-07-05 15:36:03 +00:00
|
|
|
.Pa /boot/loader.conf
|
2004-10-05 20:42:16 +00:00
|
|
|
and include the following lines.
|
2002-07-05 15:36:03 +00:00
|
|
|
.Bd -literal -offset indent
|
|
|
|
acpi_dsdt_load="YES"
|
2004-10-05 20:42:16 +00:00
|
|
|
acpi_dsdt_name="/boot/acpi_dsdt.aml" # You may change this name.
|
2002-07-05 15:36:03 +00:00
|
|
|
.Ed
|
|
|
|
.Pp
|
2002-08-13 13:44:45 +00:00
|
|
|
In order to prepare your AML code, you will need the
|
|
|
|
.Xr acpidump 8
|
|
|
|
and
|
2002-07-05 15:36:03 +00:00
|
|
|
.Xr iasl 1
|
2003-09-26 04:32:40 +00:00
|
|
|
utilities and some ACPI knowledge.
|
2003-05-22 23:58:50 +00:00
|
|
|
.Sh TUNABLES
|
2003-06-02 15:02:06 +00:00
|
|
|
.Bl -tag -width indent
|
|
|
|
.It Va acpi_dsdt_load
|
|
|
|
Enables loading of a custom ACPI DSDT.
|
|
|
|
.It Va acpi_dsdt_name
|
2003-05-23 21:40:07 +00:00
|
|
|
Name of the DSDT table to load, if loading is enabled.
|
2004-03-03 03:02:17 +00:00
|
|
|
.It Va debug.acpi.disabled
|
2003-05-22 23:58:50 +00:00
|
|
|
Selectively disables portions of ACPI for debugging purposes.
|
2003-06-02 15:02:06 +00:00
|
|
|
.It Va hint.acpi.0.disabled
|
2004-06-30 20:49:34 +00:00
|
|
|
Set this to 1 to disable all of ACPI.
|
2004-07-07 19:57:16 +00:00
|
|
|
If ACPI has been disabled on your system due to a blacklist entry for your
|
2004-06-30 20:49:34 +00:00
|
|
|
BIOS, you can set this to 0 to re-enable ACPI for testing.
|
2003-07-30 16:22:53 +00:00
|
|
|
.It Va hw.acpi.ec.poll_timeout
|
2003-11-19 20:30:18 +00:00
|
|
|
Delay in milliseconds to wait for the EC to respond.
|
2003-12-28 12:56:01 +00:00
|
|
|
Try increasing this number if you get the error
|
2003-07-30 16:22:53 +00:00
|
|
|
.Er AE_NO_HARDWARE_RESPONSE .
|
2004-02-14 03:17:30 +00:00
|
|
|
.It Va hw.acpi.osname
|
2003-12-28 12:56:01 +00:00
|
|
|
Some systems' ASL may have problems because they look for names
|
|
|
|
of Microsoft operating systems.
|
2004-01-16 18:10:42 +00:00
|
|
|
This tunable overrides the value of the
|
|
|
|
.Qq Li \e_OS
|
|
|
|
object from its default of
|
|
|
|
.Qq Li FreeBSD .
|
2003-06-02 15:02:06 +00:00
|
|
|
.It Va hw.acpi.pci.link.%d.%d.%d.irq
|
2003-05-22 23:58:50 +00:00
|
|
|
Override the interrupt to use.
|
2004-12-04 23:26:46 +00:00
|
|
|
.It Va hw.acpi.reset_video
|
|
|
|
Enables calling the VESA reset BIOS vector on the resume path.
|
|
|
|
Some graphic chips have problems such as LCD white-out after resume.
|
|
|
|
Try setting this to 0 if this causes problems for you.
|
|
|
|
.It Va hw.acpi.serialize_methods
|
|
|
|
Allow override of whether methods execute in parallel or not.
|
|
|
|
Enable this for serial behavior, which fixes "AE_ALREADY_EXISTS" errors for
|
|
|
|
AML that really can't handle parallel method execution.
|
|
|
|
It is off by default since this breaks recursive methods and some IBMs use
|
|
|
|
such code.
|
2003-06-02 15:02:06 +00:00
|
|
|
.It Va hw.acpi.verbose
|
2003-05-22 23:58:50 +00:00
|
|
|
Turn on verbose debugging information about what ACPI is doing.
|
|
|
|
.El
|
2003-11-15 19:26:06 +00:00
|
|
|
.Sh SYSCTLS
|
|
|
|
.Bl -tag -width indent
|
2003-12-18 04:39:09 +00:00
|
|
|
.It Va hw.acpi.cpu.throttle_max
|
|
|
|
Maximum value for CPU throttling, equal to 100% of the clock rate.
|
|
|
|
.It Va hw.acpi.cpu.throttle_state
|
|
|
|
Get or set the current throttling state, from 1 to
|
|
|
|
.Va hw.acpi.cpu.throttle_max .
|
|
|
|
This scales back the CPU clock rate and the corresponding power consumption.
|
2004-06-05 07:02:18 +00:00
|
|
|
.It Va hw.acpi.cpu.cx_usage
|
|
|
|
Debugging information listing the percent of total usage for each sleep state.
|
|
|
|
The values are reset when
|
2003-11-15 19:26:06 +00:00
|
|
|
.Va hw.acpi.cpu.cx_lowest
|
|
|
|
is modified.
|
|
|
|
.It Va hw.acpi.cpu.cx_lowest
|
2004-05-07 05:22:38 +00:00
|
|
|
Lowest Cx state to use for idling the CPU.
|
|
|
|
A scheduling algorithm will select states between C1 and this setting
|
|
|
|
as system load dictates.
|
2003-11-15 19:26:06 +00:00
|
|
|
To enable ACPI CPU idling control,
|
|
|
|
.Va machdep.cpu_idle_hlt
|
|
|
|
must be set to 1.
|
|
|
|
.It Va hw.acpi.cpu.cx_supported
|
|
|
|
List of supported CPU idle states and their transition latency
|
|
|
|
in microseconds.
|
2004-06-16 08:33:57 +00:00
|
|
|
Each state has a type (e.g., C2).
|
2003-11-19 20:28:56 +00:00
|
|
|
C1 is equivalent to the ia32 HLT instruction, C2 provides a deeper
|
|
|
|
sleep with the same semantics, and C3 provides the deepest sleep
|
|
|
|
but additionally requires bus mastering to be disabled.
|
2004-05-07 05:22:38 +00:00
|
|
|
States greater than C3 provide even more power savings with the same
|
|
|
|
semantics as the C3 state.
|
2003-11-19 20:28:56 +00:00
|
|
|
Deeper sleeps provide more power savings but increased transition
|
|
|
|
latency when an interrupt occurs.
|
2003-11-15 19:26:06 +00:00
|
|
|
.El
|
2001-07-03 07:45:04 +00:00
|
|
|
.Sh COMPATIBILITY
|
2003-11-15 19:26:06 +00:00
|
|
|
ACPI is only found and supported on i386/ia32, ia64, and amd64.
|
2001-07-03 07:45:04 +00:00
|
|
|
.Sh SEE ALSO
|
2004-02-17 20:38:49 +00:00
|
|
|
.Xr kenv 1 ,
|
2003-12-28 12:56:01 +00:00
|
|
|
.Xr acpi_thermal 4 ,
|
2004-02-17 20:38:49 +00:00
|
|
|
.Xr device.hints 5 ,
|
2002-07-05 15:36:03 +00:00
|
|
|
.Xr loader.conf 5 ,
|
2002-10-24 01:44:50 +00:00
|
|
|
.Xr acpiconf 8 ,
|
2002-07-05 15:36:03 +00:00
|
|
|
.Xr acpidump 8 ,
|
2003-09-26 04:32:40 +00:00
|
|
|
.Xr config 8 ,
|
|
|
|
.Xr iasl 8
|
2002-07-05 15:36:03 +00:00
|
|
|
.Rs
|
2002-08-13 13:44:45 +00:00
|
|
|
.%A "Compaq Computer Corporation"
|
|
|
|
.%A "Intel Corporation"
|
|
|
|
.%A "Microsoft Corporation"
|
|
|
|
.%A "Phoenix Technologies Ltd."
|
|
|
|
.%A "Toshiba Corporation"
|
2003-11-19 20:28:56 +00:00
|
|
|
.%D August 25, 2003
|
2002-07-05 15:36:03 +00:00
|
|
|
.%T "Advanced Configuration and Power Interface Specification"
|
|
|
|
.%O http://acpi.info/spec.htm
|
|
|
|
.Re
|
2001-07-06 08:10:59 +00:00
|
|
|
.Sh AUTHORS
|
|
|
|
.An -nosplit
|
2001-07-03 07:45:04 +00:00
|
|
|
The ACPI CA subsystem is developed and maintained by
|
|
|
|
Intel Architecture Labs.
|
|
|
|
.Pp
|
|
|
|
The following people made notable contributions to the ACPI subsystem
|
|
|
|
in
|
|
|
|
.Fx :
|
2003-08-07 04:46:53 +00:00
|
|
|
.An Michael Smith ,
|
2001-07-06 08:10:59 +00:00
|
|
|
.An Takanori Watanabe Aq takawata@jp.FreeBSD.org ,
|
|
|
|
.An Mitsuru IWASAKI Aq iwasaki@jp.FreeBSD.org ,
|
2001-07-03 07:45:04 +00:00
|
|
|
.An Munehiro Matsuda ,
|
2003-08-07 04:46:53 +00:00
|
|
|
.An Nate Lawson ,
|
2001-07-03 07:45:04 +00:00
|
|
|
the ACPI-jp mailing list at
|
2001-07-06 08:10:59 +00:00
|
|
|
.Aq acpi-jp@jp.FreeBSD.org ,
|
2001-07-03 07:45:04 +00:00
|
|
|
and many other contributors.
|
|
|
|
.Pp
|
|
|
|
This manual page was written by
|
2001-07-06 08:10:59 +00:00
|
|
|
.An Michael Smith Aq msmith@FreeBSD.org .
|
2001-07-03 07:45:04 +00:00
|
|
|
.Sh BUGS
|
2001-08-26 22:51:52 +00:00
|
|
|
If the
|
|
|
|
.Nm
|
|
|
|
driver is loaded as a module when it is already linked as part of the
|
|
|
|
kernel, odd things may happen.
|