xref: /freebsd/share/man/man4/acpi.4 (revision 287460e87c6fbe05bc081011207f73a48a46712d)
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.\"
2855c71dc9SMark Santcroos.Dd June 30, 2004
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
3509f84dd1SRuslan Ermilov.Cd "device acpi"
36b6695bd0SMike Smith.Pp
3709f84dd1SRuslan Ermilov.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.
48d1f717d1SMike Smith.Pp
49d1f717d1SMike SmithNote that the
50d1f717d1SMike Smith.Nm
51d1f717d1SMike Smithdriver is automatically loaded by the bootloader, and should not normally
52d1f717d1SMike Smithbe compiled into the kernel.
53b6695bd0SMike Smith.Sh ENVIRONMENT
54b6695bd0SMike SmithThis support is still experimental, and thus there are many debugging
553184cf5aSNate Lawsonand tuning options which are managed via the kernel environment.
563184cf5aSNate LawsonTunables can be set at the
5787b6284aSRuslan Ermilov.Xr loader 8
583184cf5aSNate Lawsonprompt before booting the kernel or stored in
593184cf5aSNate Lawson.Pa /boot/loader.conf .
60b6695bd0SMike Smith.Pp
61b6695bd0SMike SmithDebugging is separated between layers and levels, where a layer is
62b6695bd0SMike Smitha portion of the ACPI subsystem, and a level is a particular kind
63b6695bd0SMike Smithof debugging output.
64b6695bd0SMike Smith.Pp
65b6695bd0SMike SmithBoth layers and levels are specified as a whitespace-separated list of
66b6695bd0SMike Smithtokens, with layers listed in
67b6695bd0SMike Smith.Va debug.acpi.layer
68b6695bd0SMike Smithand levels in
69b6695bd0SMike Smith.Va debug.acpi.level .
70b6695bd0SMike SmithThe supported layers are:
7187b6284aSRuslan Ermilov.Pp
7287b6284aSRuslan Ermilov.Bl -item -offset indent -compact
73b6695bd0SMike Smith.It
7487b6284aSRuslan Ermilov.Li ACPI_UTILITIES
75b6695bd0SMike Smith.It
7687b6284aSRuslan Ermilov.Li ACPI_HARDWARE
77b6695bd0SMike Smith.It
7887b6284aSRuslan Ermilov.Li ACPI_EVENTS
79b6695bd0SMike Smith.It
8087b6284aSRuslan Ermilov.Li ACPI_TABLES
81b6695bd0SMike Smith.It
8287b6284aSRuslan Ermilov.Li ACPI_NAMESPACE
83b6695bd0SMike Smith.It
8487b6284aSRuslan Ermilov.Li ACPI_PARSER
85b6695bd0SMike Smith.It
8687b6284aSRuslan Ermilov.Li ACPI_DISPATCHER
87b6695bd0SMike Smith.It
8887b6284aSRuslan Ermilov.Li ACPI_EXECUTER
89b6695bd0SMike Smith.It
9087b6284aSRuslan Ermilov.Li ACPI_RESOURCES
91b6695bd0SMike Smith.It
92297835bcSNate Lawson.Li ACPI_CA_DEBUGGER
93d1f717d1SMike Smith.It
94d1f717d1SMike Smith.Li ACPI_OS_SERVICES
95b6695bd0SMike Smith.It
96297835bcSNate Lawson.Li ACPI_CA_DISASSEMBLER
97297835bcSNate Lawson.It
98297835bcSNate Lawson.Li ACPI_ALL_COMPONENTS
99297835bcSNate Lawson.It
10087b6284aSRuslan Ermilov.Li ACPI_AC_ADAPTER
101b6695bd0SMike Smith.It
10287b6284aSRuslan Ermilov.Li ACPI_BATTERY
103b6695bd0SMike Smith.It
1043184cf5aSNate Lawson.Li ACPI_BUS
1053184cf5aSNate Lawson.It
10687b6284aSRuslan Ermilov.Li ACPI_BUTTON
107b6695bd0SMike Smith.It
1083184cf5aSNate Lawson.Li ACPI_EC
1093184cf5aSNate Lawson.It
1103184cf5aSNate Lawson.Li ACPI_FAN
1113184cf5aSNate Lawson.It
1123184cf5aSNate Lawson.Li ACPI_POWER
1133184cf5aSNate Lawson.It
114d1f717d1SMike Smith.Li ACPI_PROCESSOR
115b6695bd0SMike Smith.It
11687b6284aSRuslan Ermilov.Li ACPI_THERMAL
117b6695bd0SMike Smith.It
1183184cf5aSNate Lawson.Li ACPI_TIMER
119b6695bd0SMike Smith.It
120297835bcSNate Lawson.Li ACPI_ALL_DRIVERS
121b6695bd0SMike Smith.El
12287b6284aSRuslan Ermilov.Pp
123b6695bd0SMike SmithThe supported levels are:
12487b6284aSRuslan Ermilov.Pp
12587b6284aSRuslan Ermilov.Bl -item -offset indent -compact
126b6695bd0SMike Smith.It
127297835bcSNate Lawson.Li ACPI_LV_ERROR
128b6695bd0SMike Smith.It
129d1f717d1SMike Smith.Li ACPI_LV_WARN
130b6695bd0SMike Smith.It
131297835bcSNate Lawson.Li ACPI_LV_INIT
132b6695bd0SMike Smith.It
133d1f717d1SMike Smith.Li ACPI_LV_DEBUG_OBJECT
134b6695bd0SMike Smith.It
135297835bcSNate Lawson.Li ACPI_LV_INFO
136297835bcSNate Lawson.It
137d1f717d1SMike Smith.Li ACPI_LV_ALL_EXCEPTIONS
138b6695bd0SMike Smith.It
139297835bcSNate Lawson.Li ACPI_LV_INIT_NAMES
140b6695bd0SMike Smith.It
141d1f717d1SMike Smith.Li ACPI_LV_PARSE
142b6695bd0SMike Smith.It
143d1f717d1SMike Smith.Li ACPI_LV_LOAD
144b6695bd0SMike Smith.It
145297835bcSNate Lawson.Li ACPI_LV_DISPATCH
146297835bcSNate Lawson.It
147d1f717d1SMike Smith.Li ACPI_LV_EXEC
148b6695bd0SMike Smith.It
149d1f717d1SMike Smith.Li ACPI_LV_NAMES
150b6695bd0SMike Smith.It
151d1f717d1SMike Smith.Li ACPI_LV_OPREGION
152b6695bd0SMike Smith.It
153d1f717d1SMike Smith.Li ACPI_LV_BFIELD
154b6695bd0SMike Smith.It
155d1f717d1SMike Smith.Li ACPI_LV_TABLES
156b6695bd0SMike Smith.It
157d1f717d1SMike Smith.Li ACPI_LV_VALUES
158b6695bd0SMike Smith.It
159d1f717d1SMike Smith.Li ACPI_LV_OBJECTS
160b6695bd0SMike Smith.It
161d1f717d1SMike Smith.Li ACPI_LV_RESOURCES
162b6695bd0SMike Smith.It
163d1f717d1SMike Smith.Li ACPI_LV_USER_REQUESTS
164b6695bd0SMike Smith.It
165d1f717d1SMike Smith.Li ACPI_LV_PACKAGE
166b6695bd0SMike Smith.It
167297835bcSNate Lawson.Li ACPI_LV_VERBOSITY1
168b6695bd0SMike Smith.It
169297835bcSNate Lawson.Li ACPI_LV_ALLOCATIONS
170297835bcSNate Lawson.It
171297835bcSNate Lawson.Li ACPI_LV_FUNCTIONS
172297835bcSNate Lawson.It
173297835bcSNate Lawson.Li ACPI_LV_OPTIMIZATIONS
174297835bcSNate Lawson.It
175297835bcSNate Lawson.Li ACPI_LV_VERBOSITY2
176b6695bd0SMike Smith.It
177d1f717d1SMike Smith.Li ACPI_LV_ALL
178b6695bd0SMike Smith.It
179297835bcSNate Lawson.Li ACPI_LV_MUTEX
180b6695bd0SMike Smith.It
181297835bcSNate Lawson.Li ACPI_LV_THREADS
182b6695bd0SMike Smith.It
183297835bcSNate Lawson.Li ACPI_LV_IO
184b6695bd0SMike Smith.It
185297835bcSNate Lawson.Li ACPI_LV_INTERRUPTS
186b6695bd0SMike Smith.It
187297835bcSNate Lawson.Li ACPI_LV_VERBOSITY3
188297835bcSNate Lawson.It
189297835bcSNate Lawson.Li ACPI_LV_AML_DISASSEMBLE
190297835bcSNate Lawson.It
191297835bcSNate Lawson.Li ACPI_LV_VERBOSE_INFO
192297835bcSNate Lawson.It
193297835bcSNate Lawson.Li ACPI_LV_FULL_TABLES
194297835bcSNate Lawson.It
195297835bcSNate Lawson.Li ACPI_LV_EVENTS
196297835bcSNate Lawson.It
197297835bcSNate Lawson.Li ACPI_LV_VERBOSE
198b6695bd0SMike Smith.El
199b6695bd0SMike Smith.Pp
200b6695bd0SMike SmithSelection of the appropriate layer and level values is important
201b6695bd0SMike Smithto avoid massive amounts of debugging output.
202b6695bd0SMike SmithCheck the code to see which you need.
203b6695bd0SMike Smith.Pp
204b6695bd0SMike SmithDebugging output by the ACPI CA subsystem is prefixed with the
205b6695bd0SMike Smithmodule name in lowercase, followed by a source line number.
20687b6284aSRuslan ErmilovOutput from the
20787b6284aSRuslan Ermilov.Fx Ns -local
20887b6284aSRuslan Ermilovcode follows the same format, but
209b6695bd0SMike Smiththe module name is uppercased.
210b6695bd0SMike Smith.Pp
21107e2d046SMark SantcroosFor machines known not to work with
21207e2d046SMark Santcroos.Nm
21355c71dc9SMark Santcroosenabled, there is a BIOS blacklist.
21455c71dc9SMark SantcroosCurrently, the blacklist only controls whether
21507e2d046SMark Santcroos.Nm
21655c71dc9SMark Santcroosshould be disabled or not.
21755c71dc9SMark SantcroosIn the future, it will have more granularity to control features (the
21855c71dc9SMark Santcroosinfrastructure for that is already there).
21907e2d046SMark Santcroos.Pp
22007e2d046SMark SantcroosTo enable
22107e2d046SMark Santcroos.Nm
22255c71dc9SMark Santcroos(for debugging purposes, etc.) on machines that are on the blacklist, set the
22355c71dc9SMark Santcrooskernel environment variable
22407e2d046SMark Santcroos.Va hint.acpi.0.disabled
22555c71dc9SMark Santcroosto 0.
22655c71dc9SMark SantcroosBefore trying this, consider updating your BIOS to a more recent version that
22755c71dc9SMark Santcroosmay be compatible with ACPI.
22807e2d046SMark Santcroos.Pp
2294e3148f4SWarner LoshTo disable the
2304e3148f4SWarner Losh.Nm
2314e3148f4SWarner Loshdriver completely, set the kernel environment variable
2324e3148f4SWarner Losh.Va hint.acpi.0.disabled
233d865f9efSWes Petersto 1.
234d865f9efSWes Peters.Pp
2354e3148f4SWarner LoshSome i386 machines totally fail to operate with some or all of ACPI disabled.
2364e3148f4SWarner LoshOther i386 machines fail with ACPI enabled.
2374e3148f4SWarner LoshNon-i386 platforms do not support operating systems which do not use ACPI.
2384e3148f4SWarner LoshDisabling all or part of ACPI on non-i386 platforms may result in a
2394e3148f4SWarner Loshnon-functional system.
2404e3148f4SWarner Losh.Pp
241b6695bd0SMike SmithThe
242b6695bd0SMike Smith.Nm
243b6695bd0SMike Smithdriver comprises a set of drivers, which may be selectively disabled
244b6695bd0SMike Smithin case of problems.
245b6695bd0SMike SmithTo disable a sub-driver, list it in the kernel
246b6695bd0SMike Smithenvironment variable
2473184cf5aSNate Lawson.Va debug.acpi.disabled .
24837c51fd9SNate LawsonMultiple entries can be listed, separated by a space.
249b6695bd0SMike Smith.Pp
250b6695bd0SMike SmithACPI sub-devices and features that can be disabled:
251e821c364SNate Lawson.Bl -tag -width sysresource
25237c51fd9SNate Lawson.It Li all
253e821c364SNate LawsonDisable all ACPI features and devices.
25418974fe8SNate Lawson.It Li acad
25518974fe8SNate Lawson.Pq Vt device
25618974fe8SNate LawsonSupports AC adapter.
25787b6284aSRuslan Ermilov.It Li bus
258b6695bd0SMike Smith.Pq Vt feature
259b6695bd0SMike SmithProbes and attaches subdevices.
260b6695bd0SMike SmithDisabling will avoid scanning the ACPI namespace entirely.
26187b6284aSRuslan Ermilov.It Li children
262b6695bd0SMike Smith.Pq Vt feature
263b6695bd0SMike SmithAttaches standard ACPI sub-drivers and devices enumerated in the
264b6695bd0SMike SmithACPI namespace.
265b6695bd0SMike SmithDisabling this has a similar effect to disabling
26687b6284aSRuslan Ermilov.Dq Li bus ,
267b6695bd0SMike Smithexcept that the
268b6695bd0SMike SmithACPI namespace will still be scanned.
26987b6284aSRuslan Ermilov.It Li button
270b6695bd0SMike Smith.Pq Vt device
271bf7f20c2SRuslan ErmilovSupports ACPI button devices (typically power and sleep buttons).
27237c51fd9SNate Lawson.It Li cmbat
27337c51fd9SNate Lawson.Pq Vt device
27437c51fd9SNate LawsonControl-method batteries device.
27537c51fd9SNate Lawson.It Li cpu
27637c51fd9SNate Lawson.Pq Vt device
27737c51fd9SNate LawsonSupports CPU power-saving and speed-setting functions.
27887b6284aSRuslan Ermilov.It Li ec
279b6695bd0SMike Smith.Pq Vt device
28037c51fd9SNate LawsonSupports the ACPI Embedded Controller interface, used to communicate
28137c51fd9SNate Lawsonwith embedded platform controllers.
28287b6284aSRuslan Ermilov.It Li isa
283b6695bd0SMike Smith.Pq Vt device
284b6695bd0SMike SmithSupports an ISA bus bridge defined in the ACPI namespace,
285b6695bd0SMike Smithtypically as a child of a PCI bus.
28687b6284aSRuslan Ermilov.It Li lid
287b6695bd0SMike Smith.Pq Vt device
288b6695bd0SMike SmithSupports an ACPI laptop lid switch, which typically puts a
289b6695bd0SMike Smithsystem to sleep.
2904e376d58SNate Lawson.It Li quirks
2914e376d58SNate Lawson.Pq Vt feature
292bf7f20c2SRuslan ErmilovDo not honor quirks.
2934e376d58SNate LawsonQuirks automatically disable ACPI functionality based on the XSDT table's
2944e376d58SNate LawsonOEM vendor name and revision date.
29587b6284aSRuslan Ermilov.It Li pci
296b6695bd0SMike Smith.Pq Vt device
297b6695bd0SMike SmithSupports Host to PCI bridges.
29837c51fd9SNate Lawson.It Li pci_link
299e821c364SNate Lawson.Pq Vt feature
30037c51fd9SNate LawsonPerforms PCI interrupt routing.
30137c51fd9SNate Lawson.It Li sysresource
30237c51fd9SNate Lawson.Pq Vt device
30337c51fd9SNate LawsonPseudo-devices containing resources which ACPI claims.
30487b6284aSRuslan Ermilov.It Li thermal
305b6695bd0SMike Smith.Pq Vt device
306b6695bd0SMike SmithSupports system cooling and heat management.
30787b6284aSRuslan Ermilov.It Li timer
308b6695bd0SMike Smith.Pq Vt device
309b6695bd0SMike SmithImplements a timecounter using the ACPI fixed-frequency timer.
310b6695bd0SMike Smith.El
311b6695bd0SMike Smith.Pp
312b6695bd0SMike SmithIt is also possible to avoid portions of the ACPI namespace which
313b6695bd0SMike Smithmay be causing problems, by listing the full path of the root of
314b6695bd0SMike Smiththe region to be avoided in the kernel environment variable
315b6695bd0SMike Smith.Va debug.acpi.avoid .
316b6695bd0SMike SmithThe object and all of its children will be ignored during the
31787b6284aSRuslan Ermilovbus/children scan of the namespace.
31887b6284aSRuslan ErmilovThe ACPI CA code will still
319b6695bd0SMike Smithknow about the avoided region.
320f0da5f56STakanori Watanabe.Sh OVERRIDING YOUR BIOS BYTECODE
321287460e8SNate LawsonACPI interprets bytecode named AML
322287460e8SNate Lawson(ACPI Machine Language)
323287460e8SNate Lawsonprovided by the BIOS vendor as a memory image at boot time.
324287460e8SNate LawsonSometimes, the AML code contains a bug that does not appear when parsed
325287460e8SNate Lawsonby the Microsoft implementation.
326287460e8SNate Lawson.Fx
327287460e8SNate Lawsonprovides a way to override it with your own AML code to workaround
328287460e8SNate Lawsonor debug such problems.
329287460e8SNate LawsonNote that all AML in your DSDT and any SSDT tables is overridden.
330f0da5f56STakanori Watanabe.Pp
331287460e8SNate LawsonIn order to load your AML code, you must edit
332f0da5f56STakanori Watanabe.Pa /boot/loader.conf
333287460e8SNate Lawsonand include the following lines.
334f0da5f56STakanori Watanabe.Bd -literal -offset indent
335f0da5f56STakanori Watanabeacpi_dsdt_load="YES"
336287460e8SNate Lawsonacpi_dsdt_name="/boot/acpi_dsdt.aml" # You may change this name.
337f0da5f56STakanori Watanabe.Ed
338f0da5f56STakanori Watanabe.Pp
339a627f55aSRuslan ErmilovIn order to prepare your AML code, you will need the
340a627f55aSRuslan Ermilov.Xr acpidump 8
341a627f55aSRuslan Ermilovand
342f0da5f56STakanori Watanabe.Xr iasl 1
343297835bcSNate Lawsonutilities and some ACPI knowledge.
3447c8cd16cSWarner Losh.Sh TUNABLES
34509f84dd1SRuslan Ermilov.Bl -tag -width indent
34609f84dd1SRuslan Ermilov.It Va acpi_dsdt_load
34709f84dd1SRuslan ErmilovEnables loading of a custom ACPI DSDT.
34809f84dd1SRuslan Ermilov.It Va acpi_dsdt_name
34991113bc8SNate LawsonName of the DSDT table to load, if loading is enabled.
3503184cf5aSNate Lawson.It Va debug.acpi.disabled
3517c8cd16cSWarner LoshSelectively disables portions of ACPI for debugging purposes.
35209f84dd1SRuslan Ermilov.It Va hint.acpi.0.disabled
35355c71dc9SMark SantcroosSet this to 1 to disable all of ACPI.
35455c71dc9SMark SantcroosIf ACPI has been disabled on your system due to a blacklist entry for your
35555c71dc9SMark SantcroosBIOS, you can set this to 0 to re-enable ACPI for testing.
356a329ebcaSNate Lawson.It Va hw.acpi.ec.poll_timeout
3571e14834aSNate LawsonDelay in milliseconds to wait for the EC to respond.
35839330d77SNate LawsonTry increasing this number if you get the error
359a329ebcaSNate Lawson.Er AE_NO_HARDWARE_RESPONSE .
3601e14834aSNate Lawson.It Va hw.acpi.reset_video
3611e14834aSNate LawsonEnables calling the VESA reset BIOS vector on the resume path.
3621e14834aSNate LawsonSome graphic chips have problems such as LCD white-out after resume.
3631e14834aSNate LawsonTry setting this to 0 if this causes problems for you.
364d3e1c241SNate Lawson.It Va hw.acpi.osname
365718a5d6aSNate LawsonSome systems' ASL may have problems because they look for names
3661e14834aSNate Lawsonof Microsoft operating systems.
36709c84ba4SNate LawsonThis tunable overrides the value of the
36809c84ba4SNate Lawson.Qq Li \e_OS
36909c84ba4SNate Lawsonobject from its default of
37009c84ba4SNate Lawson.Qq Li FreeBSD .
37109f84dd1SRuslan Ermilov.It Va hw.acpi.pci.link.%d.%d.%d.irq
3727c8cd16cSWarner LoshOverride the interrupt to use.
37309f84dd1SRuslan Ermilov.It Va hw.acpi.verbose
3747c8cd16cSWarner LoshTurn on verbose debugging information about what ACPI is doing.
3757c8cd16cSWarner Losh.El
3766b74f9b7SNate Lawson.Sh SYSCTLS
3776b74f9b7SNate Lawson.Bl -tag -width indent
3783526eac0SNate Lawson.It Va hw.acpi.cpu.throttle_max
3793526eac0SNate LawsonMaximum value for CPU throttling, equal to 100% of the clock rate.
3803526eac0SNate Lawson.It Va hw.acpi.cpu.throttle_state
3813526eac0SNate LawsonGet or set the current throttling state, from 1 to
3823526eac0SNate Lawson.Va hw.acpi.cpu.throttle_max .
3833526eac0SNate LawsonThis scales back the CPU clock rate and the corresponding power consumption.
384a2afe45aSNate Lawson.It Va hw.acpi.cpu.cx_usage
385a2afe45aSNate LawsonDebugging information listing the percent of total usage for each sleep state.
386a2afe45aSNate LawsonThe values are reset when
3876b74f9b7SNate Lawson.Va hw.acpi.cpu.cx_lowest
3886b74f9b7SNate Lawsonis modified.
3896b74f9b7SNate Lawson.It Va hw.acpi.cpu.cx_lowest
390ccc09458SNate LawsonLowest Cx state to use for idling the CPU.
391ccc09458SNate LawsonA scheduling algorithm will select states between C1 and this setting
392ccc09458SNate Lawsonas system load dictates.
3936b74f9b7SNate LawsonTo enable ACPI CPU idling control,
3946b74f9b7SNate Lawson.Va machdep.cpu_idle_hlt
3956b74f9b7SNate Lawsonmust be set to 1.
3966b74f9b7SNate Lawson.It Va hw.acpi.cpu.cx_supported
3976b74f9b7SNate LawsonList of supported CPU idle states and their transition latency
3986b74f9b7SNate Lawsonin microseconds.
399bf7f20c2SRuslan ErmilovEach state has a type (e.g., C2).
400c25a3f8aSNate LawsonC1 is equivalent to the ia32 HLT instruction, C2 provides a deeper
401c25a3f8aSNate Lawsonsleep with the same semantics, and C3 provides the deepest sleep
402c25a3f8aSNate Lawsonbut additionally requires bus mastering to be disabled.
403ccc09458SNate LawsonStates greater than C3 provide even more power savings with the same
404ccc09458SNate Lawsonsemantics as the C3 state.
405c25a3f8aSNate LawsonDeeper sleeps provide more power savings but increased transition
406c25a3f8aSNate Lawsonlatency when an interrupt occurs.
4076b74f9b7SNate Lawson.El
408b6695bd0SMike Smith.Sh COMPATIBILITY
4096b74f9b7SNate LawsonACPI is only found and supported on i386/ia32, ia64, and amd64.
410b6695bd0SMike Smith.Sh SEE ALSO
4115413d9e0SWes Peters.Xr kenv 1 ,
412673fbcacSRuslan Ermilov.Xr acpi_thermal 4 ,
4135413d9e0SWes Peters.Xr device.hints 5 ,
414f0da5f56STakanori Watanabe.Xr loader.conf 5 ,
415f64a0a56SRobert Watson.Xr acpiconf 8 ,
416f0da5f56STakanori Watanabe.Xr acpidump 8 ,
417297835bcSNate Lawson.Xr config 8 ,
418297835bcSNate Lawson.Xr iasl 8
419f0da5f56STakanori Watanabe.Rs
420a627f55aSRuslan Ermilov.%A "Compaq Computer Corporation"
421a627f55aSRuslan Ermilov.%A "Intel Corporation"
422a627f55aSRuslan Ermilov.%A "Microsoft Corporation"
423a627f55aSRuslan Ermilov.%A "Phoenix Technologies Ltd."
424a627f55aSRuslan Ermilov.%A "Toshiba Corporation"
425c25a3f8aSNate Lawson.%D August 25, 2003
426f0da5f56STakanori Watanabe.%T "Advanced Configuration and Power Interface Specification"
427f0da5f56STakanori Watanabe.%O http://acpi.info/spec.htm
428f0da5f56STakanori Watanabe.Re
42987b6284aSRuslan Ermilov.Sh AUTHORS
43087b6284aSRuslan Ermilov.An -nosplit
431b6695bd0SMike SmithThe ACPI CA subsystem is developed and maintained by
432b6695bd0SMike SmithIntel Architecture Labs.
433b6695bd0SMike Smith.Pp
434b6695bd0SMike SmithThe following people made notable contributions to the ACPI subsystem
435b6695bd0SMike Smithin
436b6695bd0SMike Smith.Fx :
437718a5d6aSNate Lawson.An Michael Smith ,
43887b6284aSRuslan Ermilov.An Takanori Watanabe Aq takawata@jp.FreeBSD.org ,
43987b6284aSRuslan Ermilov.An Mitsuru IWASAKI Aq iwasaki@jp.FreeBSD.org ,
440b6695bd0SMike Smith.An Munehiro Matsuda ,
441718a5d6aSNate Lawson.An Nate Lawson ,
442b6695bd0SMike Smiththe ACPI-jp mailing list at
44387b6284aSRuslan Ermilov.Aq acpi-jp@jp.FreeBSD.org ,
444b6695bd0SMike Smithand many other contributors.
445b6695bd0SMike Smith.Pp
446b6695bd0SMike SmithThis manual page was written by
44787b6284aSRuslan Ermilov.An Michael Smith Aq msmith@FreeBSD.org .
448b6695bd0SMike Smith.Sh BUGS
449d1f717d1SMike SmithIf the
450d1f717d1SMike Smith.Nm
451d1f717d1SMike Smithdriver is loaded as a module when it is already linked as part of the
452d1f717d1SMike Smithkernel, odd things may happen.
453