xref: /freebsd/usr.sbin/pwm/pwm.8 (revision 6966ac055c3b7a39266fb982493330df7a097997)
1.\" Copyright (c) 2018 Emmanuel Vadot <manu@freebsd.org>
2.\"
3.\" Redistribution and use in source and binary forms, with or without
4.\" modification, are permitted provided that the following conditions
5.\" are met:
6.\" 1. Redistributions of source code must retain the above copyright
7.\"    notice, this list of conditions and the following disclaimer.
8.\" 2. Redistributions in binary form must reproduce the above copyright
9.\"    notice, this list of conditions and the following disclaimer in the
10.\"    documentation and/or other materials provided with the distribution.
11.\"
12.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
13.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
14.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
15.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
16.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
17.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
18.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
19.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
20.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
21.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
22.\"
23.\" $FreeBSD$
24.\"
25.Dd June 17, 2019
26.Dt PWM 8
27.Os
28.Sh NAME
29.Nm pwm
30.Nd configure PWM (Pulse Width Modulation) hardware
31.Sh SYNOPSIS
32.Nm
33.Op Fl f Ar device
34.Fl C
35.Nm
36.Op Fl f Ar device
37.Op Fl D | Fl E
38.Op Fl p Ar period
39.Op Fl d Ar duty
40.Sh DESCRIPTION
41The
42.Nm
43utility can be used to configure pwm hardware.
44.Nm
45uses a
46.Xr pwmc 4
47device to communicate with the hardware.
48Some PWM hardware supports multiple output channels within a single
49controller block; each
50.Xr pwmc 4
51instance controls a single PWM channel.
52.Pp
53.Xr pwmc 4
54devices are named
55.Pa /dev/pwm/pwmcX.Y ,
56where
57.Va X
58is the controller unit number and
59.Va Y
60is the channel number within that unit.
61.Pp
62The options are as follows:
63.Bl -tag -width "-f device"
64.It Fl f Ar device
65Device to operate on.
66If not specified,
67.Pa /dev/pwm/pwmc0.0
68is used.
69If an unqualified name is provided,
70.Pa /dev/pwm
71is automatically prepended.
72.It Fl C
73Show the configuration of the PWM channel.
74.It Fl D
75Disable the PWM channel.
76.It Fl d Ar duty
77Configure the duty cycle (in nanoseconds or percentage) of the PWM channel.
78Duty is the portion of the
79.Ar period
80during which the signal is asserted.
81.It Fl E
82Enable the PWM channel.
83.It Fl p Ar period
84Configure the period (in nanoseconds) of the PWM channel.
85.El
86.Sh EXAMPLES
87.Bl -bullet
88.It
89Show the configuration of the PWM channel:
90.Bd -literal
91pwm -f /dev/pwm/pwmc0.1 -C
92.Ed
93.It
94Configure a 50000 ns period and a 25000 ns duty cycle
95and enable the channel:
96.Bd -literal
97pwm -f pwmc1.1 -E -p 50000 -d 25000
98.Ed
99.It
100Configure a 50% duty cycle on the device and channel which
101were configured in
102.Xr pwmc 4
103to have the label
104.Pa backlight :
105.Bd -literal
106pwm -f backlight -d 50%
107.Ed
108.El
109.Sh SEE ALSO
110.Xr pwm 9 ,
111.Xr pwmbus 9
112.Sh HISTORY
113The
114.Nm
115utility appeared in
116.Fx 13.0 .
117.Sh AUTHORS
118.An -nosplit
119The
120.Nm
121utility and this manual page were written by
122.An Emmanuel Vadot Aq Mt manu@FreeBSD.org .
123