linux/kref.h: Add kref_put_mutex()
[dragonfly.git] / usr.bin / u4bhidctl / usbhidctl.1
blob25a212474c1853b6dfb4a1500b4b74f48cae8924
1 .\" $NetBSD: usbhidctl.1,v 1.8 1999/05/11 21:03:58 augustss Exp $
2 .\" $FreeBSD: head/usr.bin/usbhidctl/usbhidctl.1 250582 2013-05-12 22:22:12Z joel $
3 .\"
4 .\" Copyright (c) 1998 The NetBSD Foundation, Inc.
5 .\" All rights reserved.
6 .\"
7 .\" This code is derived from software contributed to The NetBSD Foundation
8 .\" by Lennart Augustsson.
9 .\"
10 .\" Redistribution and use in source and binary forms, with or without
11 .\" modification, are permitted provided that the following conditions
12 .\" are met:
13 .\" 1. Redistributions of source code must retain the above copyright
14 .\"    notice, this list of conditions and the following disclaimer.
15 .\" 2. Redistributions in binary form must reproduce the above copyright
16 .\"    notice, this list of conditions and the following disclaimer in the
17 .\"    documentation and/or other materials provided with the distribution.
18 .\"
19 .\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
20 .\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
21 .\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22 .\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
23 .\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24 .\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25 .\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26 .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27 .\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 .\" POSSIBILITY OF SUCH DAMAGE.
30 .\"
31 .Dd August 1, 2011
32 .Dt USBHIDCTL 1
33 .Os
34 .Sh NAME
35 .Nm usbhidctl
36 .Nd manipulate USB HID devices
37 .Sh SYNOPSIS
38 .Nm
39 .Fl f Ar device
40 .Op Fl t Ar table
41 .Op Fl v
42 .Op Fl x
43 .Fl r
44 .Nm
45 .Fl f Ar device
46 .Op Fl t Ar table
47 .Op Fl l
48 .Op Fl v
49 .Op Fl x
50 .Op Fl z
51 .Fl a
52 .Nm
53 .Fl f Ar device
54 .Op Fl t Ar table
55 .Op Fl l
56 .Op Fl n
57 .Op Fl v
58 .Op Fl x
59 .Op Fl z
60 .Ar item ...
61 .Nm
62 .Fl f Ar device
63 .Op Fl t Ar table
64 .Op Fl v
65 .Op Fl z
66 .Fl w
67 .Ar item=value ...
68 .Sh DESCRIPTION
69 The
70 .Nm
71 utility can be used to dump and modify the state of a USB HID (Human
72 Interface Device).
73 Each named
74 .Ar item
75 is printed.
76 If the
77 .Fl w
78 flag is specified
79 .Nm
80 attempts to set the specified items to the given values.
81 .Pp
82 The options are as follows:
83 .Bl -tag -width Ds
84 .It Fl a
85 Show all items and their current values if device returns.
86 .It Fl f Ar device
87 Specify a path name for the device to operate on.
88 .It Fl l
89 Loop and dump the device data every time it changes.
90 .It Fl n
91 Suppress printing of the item name.
92 .It Fl r
93 Dump the report descriptor.
94 .It Fl t Ar table
95 Specify a path name for the HID usage table file.
96 .It Fl v
97 Be verbose.
98 .It Fl w
99 Change item values.
100 Only 'output' and 'feature' kinds can be set with this option.
101 .It Fl x
102 Dump data in hexadecimal as well as decimal.
103 .It Fl z
104 Reset reports to zero before processing other arguments.
105 If not specified, current values will be requested from device.
107 .Sh SYNTAX
109 compares the names of items specified on the command line against the human
110 interface items reported by the USB device.
111 Each human interface item is mapped from its native form to a human readable
112 name, using the HID usage table file.
113 Command line items are compared with the generated item names,
114 and the USB HID device is operated on when a match is found.
116 Each human interface item is named by the
117 .Qq page
118 it appears in, the
119 .Qq usage
120 within that page, and the list of
121 .Qq collections
122 containing the item.
123 Each collection in turn is also identified by page, and
124 the usage within that page.
126 On the
128 command line the page name is separated from the usage name with the character
129 .Sq Cm \&: .
130 The collections are separated by the character
131 .Sq Cm \&. .
133 Some devices give the same name to more than one item.
135 supports isolating each item by appending a
136 .Sq Cm \&# .
137 character and a decimal item instance number, starting at zero.
138 .Sh FILES
139 .Bl -tag -width 30n
140 .It Pa /usr/share/misc/usb_hid_usages
141 The default HID usage table.
143 .Sh SEE ALSO
144 .Xr usbhid 3 ,
145 .Xr uhid 4 ,
146 .Xr usb 4
147 .Sh HISTORY
150 command appeared in
151 .Nx 1.4 .