xref: /freebsd/share/man/man4/ehci.4 (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1.\" $NetBSD: ehci.4,v 1.8 2001/11/21 17:22:56 augustss Exp $
2.\"
3.\" Copyright (c) 2001 The NetBSD Foundation, Inc.
4.\" All rights reserved.
5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Lennart Augustsson.
8.\"
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright
13.\"    notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\"    notice, this list of conditions and the following disclaimer in the
16.\"    documentation and/or other materials provided with the distribution.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE.
29.\"
30.Dd April 24, 2018
31.Dt EHCI 4
32.Os
33.Sh NAME
34.Nm ehci
35.Nd USB Enhanced Host Controller driver
36.Sh SYNOPSIS
37.Cd "device ehci"
38.Sh DESCRIPTION
39The
40.Nm
41driver provides support for the
42.Tn USB
43Enhanced Host Controller Interface,
44which is used by
45.Tn USB
462.0 controllers.
47.Pp
48.Tn EHCI
49controllers are peculiar in that they can only handle the
50.Tn USB
512.0 protocol.
52This means that they normally have one or more companion controllers
53(i.e.,
54.Xr ohci 4
55or
56.Xr uhci 4 )
57handling USB 1.x devices.
58Consequently each
59.Tn USB
60connector is electrically connected to two
61.Tn USB
62controllers.
63The handling of this is totally automatic,
64but can be noticed since
65.Tn USB
661.x and
67.Tn USB
682.0 devices plugged in to the same
69connector appear to connect to different USB buses.
70.Sh LOADER TUNABLES
71When the kernel has been compiled with
72.Cd options USB_DEBUG ,
73some tunables become available that affect the behavior of
74.Nm .
75These tunables can be set at the
76.Xr loader 8
77prompt before booting the kernel or stored in
78.Xr loader.conf 5 .
79.Bl -tag -width "xxxxxx"
80.It Va hw.usb.ehci.lostintrbug
81This tunable enables the lost interrupt quirk.
82The default value is 0 (off).
83.It Va hw.usb.ehci.iaadbug
84This tunable enables the EHCI doorbell quirk.
85The default value is 0 (off).
86.It Va hw.usb.ehci.no_hs
87This tunable disables USB devices to attach like HIGH-speed ones and will force all attached devices to attach to the FULL- or LOW-speed companion controller.
88The default value is 0 (off).
89.El
90.Sh SYSCTL VARIABLES
91The following variables are available as both
92.Xr sysctl 8
93variables and
94.Xr loader 8
95tunables:
96.Bl -tag -width indent
97.It Va hw.usb.ehci.debug
98Debug output level, where 0 is debugging disabled and larger values increase
99debug message verbosity.
100Default is 0.
101.El
102.Sh SEE ALSO
103.Xr ohci 4 ,
104.Xr uhci 4 ,
105.Xr usb 4 ,
106.Xr xhci 4
107.Sh HISTORY
108The
109.Nm
110device driver first appeared in
111.Fx 5.1 .
112