xref: /dragonfly/usr.sbin/acpi/acpicall/acpicall.8 (revision 029e6489)
1.\"
2.\" Copyright (c) 2015 The DragonFly Project.  All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\"
8.\" 1. Redistributions of source code must retain the above copyright
9.\"    notice, this list of conditions and the following disclaimer.
10.\" 2. Redistributions in binary form must reproduce the above copyright
11.\"    notice, this list of conditions and the following disclaimer in
12.\"    the documentation and/or other materials provided with the
13.\"    distribution.
14.\" 3. Neither the name of The DragonFly Project nor the names of its
15.\"    contributors may be used to endorse or promote products derived
16.\"    from this software without specific, prior written permission.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
21.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE
22.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
23.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
24.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
26.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
27.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
28.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29.\" SUCH DAMAGE.
30.\"
31.Dd May 29, 2020
32.Dt ACPICALL 8
33.Os
34.Sh NAME
35.Nm acpicall
36.Nd call ACPI methods
37.Sh SYNOPSIS
38.Nm
39.Op Fl v
40.Op Fl b Ar hexstring
41.Op Fl d Ar file
42.Op Fl i Ar number
43.Op Fl o Ar i | s | b | o
44.Op Fl s Ar string
45.Op Fl U Ar uuid
46.Ar path
47.Sh DESCRIPTION
48The
49.Nm
50utility calls the ACPI method
51.Ar path
52with the arguments specified by any
53.Fl b ,
54.Fl i ,
55.Fl o ,
56.Fl s ,
57and
58.Fl U
59options.
60The
61.Ar path
62argument must be a full ACPI namespace path such as
63.Pa \e_SB.PCI0.PEGR.GFX0._DSM .
64.Pp
65Note that in order to be able to use the
66.Nm
67utility, the
68.Va debug.acpi.allow_method_calls
69loader tunable must be specified in
70.Pa /boot/loader.conf .
71.Pp
72The following options are supported:
73.Bl -tag -width indent
74.It Fl b Ar hexstring
75Pass
76.Ar hexstring
77as a buffer argument.
78.It Fl d Ar file
79Specify the path of the ACPI control device.
80The default is
81.Pa /dev/acpi .
82.It Fl i Ar number
83Pass
84.Ar number
85as an integer argument.
86.It Fl o Ar i | s | b | o
87Choose the format to print the result in:
88.Ar ( i ) Ns nteger ,
89.Ar ( s ) Ns tring ,
90.Ar ( b ) Ns uffer ,
91or
92.Ar ( o ) Ns bject .
93.It Fl s Ar string
94Pass
95.Ar string
96as a string argument.
97.It Fl U Ar uuid
98Pass
99.Ar uuid
100as a buffer argument.
101.It Fl v
102Increase verbosity.
103.El
104.Sh EXAMPLES
105Note that many ACPI methods are specific to the BIOS and machine in
106question, so it is impossible to present any generic examples that will
107work everywhere.
108Some familiarity with ASL and the DSDT code of the specific machine to
109be tweaked is highly recommended.
110.Pp
111The following calls were successfully used to turn off the discrete
112.Tn NVIDIA
113GPU on the
114.Tn Optimus
115based
116.Tn Asus K53SV
117laptop:
118.Bd -literal
119acpicall -U a486d8f8-0bda-471b-a72b-6042a6b5bee0 \e
120         -i 256 -i 26 -b 01000003 "\e_SB.PCI0.PEGR.GFX0._DSM"
121
122acpicall "\e_SB.PCI0.PEGR.GFX0._PS3"
123.Ed
124.Sh SEE ALSO
125.Xr acpi 4 ,
126.Xr acpibin 8 ,
127.Xr acpiconf 8 ,
128.Xr acpidump 8 ,
129.Xr acpiexec 8 ,
130.Xr acpihelp 8 ,
131.Xr acpixtract 8 ,
132.Xr iasl 8
133.Sh AUTHORS
134.Nm
135is based on the
136.Nm acpi_call
137utility by
138.An Maxim Ignatenko Aq Mt gelraen.ua@gmail.com .
139This manual page was written by
140.An Sascha Wildner .
141