xref: /freebsd/share/man/man4/acpi.4 (revision 55c71dc9b0d97740ea1dce83963f7980fe71ed0f)
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
321f0da5f56STakanori WatanabeACPI interprets bytecode named AML, ACPI Machine Language, provided by the BIOS
322a627f55aSRuslan Ermilovvendor as a memory image at boot time.
323a627f55aSRuslan ErmilovSometimes, the AML code contains
324a627f55aSRuslan Ermilova problem that does not appear in the Microsoft implementation.
325f0da5f56STakanori WatanabeSo we provide a way to override it with your own AML code.
326f0da5f56STakanori Watanabe.Pp
327f0da5f56STakanori WatanabeIn order to load your AML code,
328f0da5f56STakanori Watanabeyou must edit
329f0da5f56STakanori Watanabe.Pa /boot/loader.conf
330f0da5f56STakanori Watanabeand
331f0da5f56STakanori Watanabeinclude the following lines.
332f0da5f56STakanori Watanabe.Bd -literal -offset indent
333f0da5f56STakanori Watanabeacpi_dsdt_load="YES"
334f0da5f56STakanori Watanabeacpi_dsdt_name="/boot/acpi_dsdt.aml" #You may change the name.
335f0da5f56STakanori Watanabe.Ed
336f0da5f56STakanori Watanabe.Pp
337a627f55aSRuslan ErmilovIn order to prepare your AML code, you will need the
338a627f55aSRuslan Ermilov.Xr acpidump 8
339a627f55aSRuslan Ermilovand
340f0da5f56STakanori Watanabe.Xr iasl 1
341297835bcSNate Lawsonutilities and some ACPI knowledge.
3427c8cd16cSWarner Losh.Sh TUNABLES
34309f84dd1SRuslan Ermilov.Bl -tag -width indent
34409f84dd1SRuslan Ermilov.It Va acpi_dsdt_load
34509f84dd1SRuslan ErmilovEnables loading of a custom ACPI DSDT.
34609f84dd1SRuslan Ermilov.It Va acpi_dsdt_name
34791113bc8SNate LawsonName of the DSDT table to load, if loading is enabled.
3483184cf5aSNate Lawson.It Va debug.acpi.disabled
3497c8cd16cSWarner LoshSelectively disables portions of ACPI for debugging purposes.
35009f84dd1SRuslan Ermilov.It Va hint.acpi.0.disabled
35155c71dc9SMark SantcroosSet this to 1 to disable all of ACPI.
35255c71dc9SMark SantcroosIf ACPI has been disabled on your system due to a blacklist entry for your
35355c71dc9SMark SantcroosBIOS, you can set this to 0 to re-enable ACPI for testing.
354a329ebcaSNate Lawson.It Va hw.acpi.ec.poll_timeout
3551e14834aSNate LawsonDelay in milliseconds to wait for the EC to respond.
35639330d77SNate LawsonTry increasing this number if you get the error
357a329ebcaSNate Lawson.Er AE_NO_HARDWARE_RESPONSE .
3581e14834aSNate Lawson.It Va hw.acpi.reset_video
3591e14834aSNate LawsonEnables calling the VESA reset BIOS vector on the resume path.
3601e14834aSNate LawsonSome graphic chips have problems such as LCD white-out after resume.
3611e14834aSNate LawsonTry setting this to 0 if this causes problems for you.
362d3e1c241SNate Lawson.It Va hw.acpi.osname
363718a5d6aSNate LawsonSome systems' ASL may have problems because they look for names
3641e14834aSNate Lawsonof Microsoft operating systems.
36509c84ba4SNate LawsonThis tunable overrides the value of the
36609c84ba4SNate Lawson.Qq Li \e_OS
36709c84ba4SNate Lawsonobject from its default of
36809c84ba4SNate Lawson.Qq Li FreeBSD .
36909f84dd1SRuslan Ermilov.It Va hw.acpi.pci.link.%d.%d.%d.irq
3707c8cd16cSWarner LoshOverride the interrupt to use.
37109f84dd1SRuslan Ermilov.It Va hw.acpi.verbose
3727c8cd16cSWarner LoshTurn on verbose debugging information about what ACPI is doing.
3737c8cd16cSWarner Losh.El
3746b74f9b7SNate Lawson.Sh SYSCTLS
3756b74f9b7SNate Lawson.Bl -tag -width indent
3763526eac0SNate Lawson.It Va hw.acpi.cpu.throttle_max
3773526eac0SNate LawsonMaximum value for CPU throttling, equal to 100% of the clock rate.
3783526eac0SNate Lawson.It Va hw.acpi.cpu.throttle_state
3793526eac0SNate LawsonGet or set the current throttling state, from 1 to
3803526eac0SNate Lawson.Va hw.acpi.cpu.throttle_max .
3813526eac0SNate LawsonThis scales back the CPU clock rate and the corresponding power consumption.
382a2afe45aSNate Lawson.It Va hw.acpi.cpu.cx_usage
383a2afe45aSNate LawsonDebugging information listing the percent of total usage for each sleep state.
384a2afe45aSNate LawsonThe values are reset when
3856b74f9b7SNate Lawson.Va hw.acpi.cpu.cx_lowest
3866b74f9b7SNate Lawsonis modified.
3876b74f9b7SNate Lawson.It Va hw.acpi.cpu.cx_lowest
388ccc09458SNate LawsonLowest Cx state to use for idling the CPU.
389ccc09458SNate LawsonA scheduling algorithm will select states between C1 and this setting
390ccc09458SNate Lawsonas system load dictates.
3916b74f9b7SNate LawsonTo enable ACPI CPU idling control,
3926b74f9b7SNate Lawson.Va machdep.cpu_idle_hlt
3936b74f9b7SNate Lawsonmust be set to 1.
3946b74f9b7SNate Lawson.It Va hw.acpi.cpu.cx_supported
3956b74f9b7SNate LawsonList of supported CPU idle states and their transition latency
3966b74f9b7SNate Lawsonin microseconds.
397bf7f20c2SRuslan ErmilovEach state has a type (e.g., C2).
398c25a3f8aSNate LawsonC1 is equivalent to the ia32 HLT instruction, C2 provides a deeper
399c25a3f8aSNate Lawsonsleep with the same semantics, and C3 provides the deepest sleep
400c25a3f8aSNate Lawsonbut additionally requires bus mastering to be disabled.
401ccc09458SNate LawsonStates greater than C3 provide even more power savings with the same
402ccc09458SNate Lawsonsemantics as the C3 state.
403c25a3f8aSNate LawsonDeeper sleeps provide more power savings but increased transition
404c25a3f8aSNate Lawsonlatency when an interrupt occurs.
4056b74f9b7SNate Lawson.El
406b6695bd0SMike Smith.Sh COMPATIBILITY
4076b74f9b7SNate LawsonACPI is only found and supported on i386/ia32, ia64, and amd64.
408b6695bd0SMike Smith.Sh SEE ALSO
4095413d9e0SWes Peters.Xr kenv 1 ,
410673fbcacSRuslan Ermilov.Xr acpi_thermal 4 ,
4115413d9e0SWes Peters.Xr device.hints 5 ,
412f0da5f56STakanori Watanabe.Xr loader.conf 5 ,
413f64a0a56SRobert Watson.Xr acpiconf 8 ,
414f0da5f56STakanori Watanabe.Xr acpidump 8 ,
415297835bcSNate Lawson.Xr config 8 ,
416297835bcSNate Lawson.Xr iasl 8
417f0da5f56STakanori Watanabe.Rs
418a627f55aSRuslan Ermilov.%A "Compaq Computer Corporation"
419a627f55aSRuslan Ermilov.%A "Intel Corporation"
420a627f55aSRuslan Ermilov.%A "Microsoft Corporation"
421a627f55aSRuslan Ermilov.%A "Phoenix Technologies Ltd."
422a627f55aSRuslan Ermilov.%A "Toshiba Corporation"
423c25a3f8aSNate Lawson.%D August 25, 2003
424f0da5f56STakanori Watanabe.%T "Advanced Configuration and Power Interface Specification"
425f0da5f56STakanori Watanabe.%O http://acpi.info/spec.htm
426f0da5f56STakanori Watanabe.Re
42787b6284aSRuslan Ermilov.Sh AUTHORS
42887b6284aSRuslan Ermilov.An -nosplit
429b6695bd0SMike SmithThe ACPI CA subsystem is developed and maintained by
430b6695bd0SMike SmithIntel Architecture Labs.
431b6695bd0SMike Smith.Pp
432b6695bd0SMike SmithThe following people made notable contributions to the ACPI subsystem
433b6695bd0SMike Smithin
434b6695bd0SMike Smith.Fx :
435718a5d6aSNate Lawson.An Michael Smith ,
43687b6284aSRuslan Ermilov.An Takanori Watanabe Aq takawata@jp.FreeBSD.org ,
43787b6284aSRuslan Ermilov.An Mitsuru IWASAKI Aq iwasaki@jp.FreeBSD.org ,
438b6695bd0SMike Smith.An Munehiro Matsuda ,
439718a5d6aSNate Lawson.An Nate Lawson ,
440b6695bd0SMike Smiththe ACPI-jp mailing list at
44187b6284aSRuslan Ermilov.Aq acpi-jp@jp.FreeBSD.org ,
442b6695bd0SMike Smithand many other contributors.
443b6695bd0SMike Smith.Pp
444b6695bd0SMike SmithThis manual page was written by
44587b6284aSRuslan Ermilov.An Michael Smith Aq msmith@FreeBSD.org .
446b6695bd0SMike Smith.Sh BUGS
447d1f717d1SMike SmithIf the
448d1f717d1SMike Smith.Nm
449d1f717d1SMike Smithdriver is loaded as a module when it is already linked as part of the
450d1f717d1SMike Smithkernel, odd things may happen.
451