xref: /freebsd/usr.sbin/pwm/pwm.8 (revision c76f07938c44264c7ebd400c23f218e561960d23)
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 I
39.Op Fl p Ar period
40.Op Fl d Ar duty
41.Sh DESCRIPTION
42The
43.Nm
44utility can be used to configure pwm hardware.
45.Nm
46uses a
47.Xr pwmc 4
48device to communicate with the hardware.
49Some PWM hardware supports multiple output channels within a single
50controller block; each
51.Xr pwmc 4
52instance controls a single PWM channel.
53.Pp
54.Xr pwmc 4
55devices are named
56.Pa /dev/pwm/pwmcX.Y ,
57where
58.Va X
59is the controller unit number and
60.Va Y
61is the channel number within that unit.
62.Pp
63The options are as follows:
64.Bl -tag -width "-f device"
65.It Fl f Ar device
66Device to operate on.
67If not specified,
68.Pa /dev/pwm/pwmc0.0
69is used.
70If an unqualified name is provided,
71.Pa /dev/pwm
72is automatically prepended.
73.It Fl C
74Show the configuration of the PWM channel.
75.It Fl D
76Disable the PWM channel.
77.It Fl d Ar duty
78Configure the duty cycle (in nanoseconds or percentage) of the PWM channel.
79Duty is the portion of the
80.Ar period
81during which the signal is asserted.
82.It Fl E
83Enable the PWM channel.
84.It Fl p Ar period
85Configure the period (in nanoseconds) of the PWM channel.
86.It Fl I
87Invert PWM signal polarity
88.El
89.Sh EXAMPLES
90.Bl -bullet
91.It
92Show the configuration of the PWM channel:
93.Bd -literal
94pwm -f /dev/pwm/pwmc0.1 -C
95.Ed
96.It
97Configure a 50000 ns period and a 25000 ns duty cycle
98and enable the channel:
99.Bd -literal
100pwm -f pwmc1.1 -E -p 50000 -d 25000
101.Ed
102.It
103Configure a 50% duty cycle on the device and channel which
104were configured in
105.Xr pwmc 4
106to have the label
107.Pa backlight :
108.Bd -literal
109pwm -f backlight -d 50%
110.Ed
111.El
112.Sh SEE ALSO
113.Xr pwm 9 ,
114.Xr pwmbus 9
115.Sh HISTORY
116The
117.Nm
118utility appeared in
119.Fx 13.0 .
120.Sh AUTHORS
121.An -nosplit
122The
123.Nm
124utility and this manual page were written by
125.An Emmanuel Vadot Aq Mt manu@FreeBSD.org .
126