summaryrefslogtreecommitdiffstats
path: root/share/man/man4/uhid.4
diff options
context:
space:
mode:
authortrhodes <trhodes@FreeBSD.org>2002-04-19 18:18:11 +0000
committertrhodes <trhodes@FreeBSD.org>2002-04-19 18:18:11 +0000
commita5c20db6b2e0e35f93d9d2fcbae4ddd058af24ae (patch)
tree2994bbc03b0afd3f17aaf4e026f97488c638cb9e /share/man/man4/uhid.4
parent3020763a0a90e886b930ef7db036697f8ae33207 (diff)
downloadFreeBSD-src-a5c20db6b2e0e35f93d9d2fcbae4ddd058af24ae.zip
FreeBSD-src-a5c20db6b2e0e35f93d9d2fcbae4ddd058af24ae.tar.gz
Add usb(4) manual pages.
PR: 27919 Obtained from: NetBSD MFC after: 3 days
Diffstat (limited to 'share/man/man4/uhid.4')
-rw-r--r--share/man/man4/uhid.4134
1 files changed, 134 insertions, 0 deletions
diff --git a/share/man/man4/uhid.4 b/share/man/man4/uhid.4
new file mode 100644
index 0000000..342fe33
--- /dev/null
+++ b/share/man/man4/uhid.4
@@ -0,0 +1,134 @@
+.\" $NetBSD: uhid.4,v 1.13 2001/12/29 14:41:59 augustss Exp $
+.\" $FreeBSD$
+.\"
+.\" Copyright (c) 1999, 2001 The NetBSD Foundation, Inc.
+.\" All rights reserved.
+.\"
+.\" This code is derived from software contributed to The NetBSD Foundation
+.\" by Lennart Augustsson.
+.\"
+.\" 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.
+.\" 3. All advertising materials mentioning features or use of this software
+.\" must display the following acknowledgment:
+.\" This product includes software developed by the NetBSD
+.\" Foundation, Inc. and its contributors.
+.\" 4. Neither the name of The NetBSD Foundation 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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.
+.\"
+.Dd July 12, 1998
+.Dt UHID 4
+.Os
+.Sh NAME
+.Nm uhid
+.Nd USB generic HID support
+.Sh SYNOPSIS
+.Cd "uhid* at uhidev? reportid ?"
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for all HID (Human Interface Device) interfaces
+in USB devices that do not have a special driver.
+.Pp
+The device handles the following
+.Xr ioctl 2
+calls:
+.Pp
+.Bl -tag -width indent -compact
+.It Dv USB_GET_REPORT_ID (int)
+Get the report identifier used by this HID report.
+.It Dv USB_GET_REPORT_DESC (struct usb_ctl_report_desc)
+Get the HID report descriptor. Using
+this descriptor the exact layout and meaning of data to/from
+the device can be found. The report descriptor is delivered
+without any processing.
+.Bd -literal
+struct usb_ctl_report_desc {
+ int size;
+ u_char data[1024]; /* filled data size will vary */
+};
+.Ed
+.It Dv USB_SET_IMMED (int)
+Sets the device in a mode where each
+.Xr read 2
+will return the current value of the input report. Normally
+a
+.Xr read 2
+will only return the data that the device reports on its
+interrupt pipe. This call may fail if the device does not support
+this feature.
+.It Dv USB_GET_REPORT (struct usb_ctl_report)
+Get a report from the device without waiting for data on
+the interrupt pipe. The
+.Dv report
+field indicates which report is requested. It should be
+.Dv UHID_INPUT_REPORT ,
+.Dv UHID_OUTPUT_REPORT ,
+or
+.Dv UHID_FEATURE_REPORT .
+This call may fail if the device does not support this feature.
+.Bd -literal
+struct usb_ctl_report {
+ int report;
+ u_char data[1024]; /* used data size will vary */
+};
+.It Dv USB_SET_REPORT (struct usb_ctl_report)
+Set a report in the device. The
+.Dv report
+field indicates which report is to be set. It should be
+.Dv UHID_INPUT_REPORT ,
+.Dv UHID_OUTPUT_REPORT ,
+or
+.Dv UHID_FEATURE_REPORT .
+This call may fail if the device does not support this feature.
+.Ed
+.El
+.Pp
+Use
+.Xr read 2
+to get data from the device. Data should be read in chunks of the
+size prescribed by the report descriptor.
+.Pp
+Use
+.Xr write 2
+send data to the device. Data should be written in chunks of the
+size prescribed by the report descriptor.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /dev/uhid?
+.El
+.Sh SEE ALSO
+.Xr usbhidaction 1 ,
+.Xr usbhidctl 1 ,
+.Xr usb 3 ,
+.Xr uhidev 4 ,
+.Xr usb 4
+.Sh HISTORY
+The
+.Nm
+driver
+appeared in
+.Nx 1.4 .
+This manual page was adopted from
+.Nx
+by Tom Rhodes <trhodes@FreeBSD.org>
+in April 2002.
OpenPOWER on IntegriCloud