d652802e24
- Try to guess what is provided as a pin spec for -t or for get/set operation: number or name. Fails in case of ambiguity. - Add -p and -N switches to force pin specification interpretation: -p forces spec to be pin number, -N forces it to be name Submitted by: Emmanuel Vadot <manu@bidouilliste.com> Differential Revision: https://reviews.freebsd.org/D5201
171 lines
3.8 KiB
Groff
171 lines
3.8 KiB
Groff
.\" Copyright (c) 1980, 1991, 1993
|
|
.\" The Regents of the University of California. All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\" 4. Neither the name of the University nor the names of its contributors
|
|
.\" may be used to endorse or promote products derived from this software
|
|
.\" without specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.\" $FreeBSD$
|
|
.\"
|
|
.Dd March 11, 2016
|
|
.Dt GPIOCTL 1
|
|
.Os
|
|
.Sh NAME
|
|
.Nm gpioctl
|
|
.Nd GPIO control utility
|
|
.Sh SYNOPSIS
|
|
.Nm
|
|
.Op Fl f Ar ctldev
|
|
.Cm -l
|
|
.Op Fl v
|
|
.Nm
|
|
.Op Fl f Ar ctldev
|
|
.Op Fl pN
|
|
.Cm -t
|
|
.Ar pin
|
|
.Nm
|
|
.Op Fl f Ar ctldev
|
|
.Op Fl pN
|
|
.Cm -c
|
|
.Ar pin
|
|
.Ar flag
|
|
.Op flag ...
|
|
.Nm
|
|
.Op Fl f Ar ctldev
|
|
.Op Fl pN
|
|
.Cm -n
|
|
.Ar pin
|
|
.Ar pin-name
|
|
.Nm
|
|
.Op Cm -f Ar ctldev
|
|
.Op Fl pN
|
|
.Ar pin
|
|
.Ar [0|1]
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm
|
|
utility could be used to manage GPIO pins from userland and list available pins.
|
|
.Pp
|
|
The
|
|
.Pa pin
|
|
argument can either be a
|
|
.Pa pin-number
|
|
or a
|
|
.Pa pin-name .
|
|
If it is a number and a pin has this number as its name and you did not use
|
|
.Fl N
|
|
or
|
|
.Fl p
|
|
, then
|
|
.Nm
|
|
exits.
|
|
.Pp
|
|
The options are as follows:
|
|
.Bl -tag -width ".Fl f Ar ctldev"
|
|
.It Fl c Ar pin Ar flag Op flag ...
|
|
Configure pin by setting provided flags.
|
|
The following flags are currently defined:
|
|
.Bl -tag -offset indent -width ".Cm PULSE"
|
|
.It Cm IN
|
|
Input pin
|
|
.It Cm OUT
|
|
Output pin
|
|
.It Cm OD
|
|
Open drain pin
|
|
.It Cm PP
|
|
Push pull pin
|
|
.It Cm TS
|
|
Tristate pin
|
|
.It Cm PU
|
|
Pull-up pin
|
|
.It Cm PD
|
|
Pull-down pin
|
|
.It Cm II
|
|
Inverted input pin
|
|
.It Cm IO
|
|
Inverted output pin
|
|
.El
|
|
.It Fl f Ar ctldev
|
|
GPIO controller device to use
|
|
If not specified, defaults to
|
|
.Pa /dev/gpioc0
|
|
.It Fl l
|
|
list available pins
|
|
.It Fl n Ar pin Ar pin-name
|
|
set the name used to describe the pin
|
|
.It Fl t Ar pin
|
|
toggle value of provided pin
|
|
.It Fl v
|
|
be verbose: for each listed pin print current configuration
|
|
.It Fl p
|
|
Force
|
|
.Pa pin
|
|
to be interpreted as a pin number
|
|
.It Fl N
|
|
Force
|
|
.Pa pin
|
|
to be interpreted as a pin name
|
|
.El
|
|
.Sh EXAMPLES
|
|
.Bl -bullet
|
|
.It
|
|
List pins available on GPIO controller defined by device /dev/gpioc0
|
|
.Pp
|
|
gpioctl -f /dev/gpioc0 -l
|
|
.It
|
|
Set the value of pin 12 to 1
|
|
.Pp
|
|
gpioctl -f /dev/gpioc0 12 1
|
|
.It
|
|
Configure pin 12 to be input pin
|
|
.Pp
|
|
gpioctl -f /dev/gpioc0 -c 12 IN
|
|
.It
|
|
Set the name of pin 12 to test
|
|
.Pp
|
|
gpioctl -f /dev/gpioc0 -n 12 test
|
|
.It
|
|
Toggle the value the pin named test
|
|
.Pp
|
|
gpioctl -f /dev/gpioc0 -t test
|
|
.It
|
|
Toggle the value of pin number 12 even if another pin has the name 12
|
|
.Pp
|
|
gpioctl -f /dev/gpioc0 -pt 12
|
|
.El
|
|
.Sh SEE ALSO
|
|
.Xr gpio 4 ,
|
|
.Xr gpioiic 4 ,
|
|
.Xr gpioled 4
|
|
.Sh HISTORY
|
|
The
|
|
.Nm
|
|
utility appeared in
|
|
.Fx 9.0 .
|
|
.Sh AUTHORS
|
|
.An -nosplit
|
|
The
|
|
.Nm
|
|
utility and this manual page were written by
|
|
.An Oleksandr Tymoshenko Aq Mt gonzo@freebsd.org .
|