18e13d96bSTom Rhodes.\" $NetBSD: ehci.4,v 1.8 2001/11/21 17:22:56 augustss Exp $ 28e13d96bSTom Rhodes.\" 38e13d96bSTom Rhodes.\" Copyright (c) 2001 The NetBSD Foundation, Inc. 48e13d96bSTom Rhodes.\" All rights reserved. 58e13d96bSTom Rhodes.\" 68e13d96bSTom Rhodes.\" This code is derived from software contributed to The NetBSD Foundation 78e13d96bSTom Rhodes.\" by Lennart Augustsson. 88e13d96bSTom Rhodes.\" 98e13d96bSTom Rhodes.\" Redistribution and use in source and binary forms, with or without 108e13d96bSTom Rhodes.\" modification, are permitted provided that the following conditions 118e13d96bSTom Rhodes.\" are met: 128e13d96bSTom Rhodes.\" 1. Redistributions of source code must retain the above copyright 138e13d96bSTom Rhodes.\" notice, this list of conditions and the following disclaimer. 148e13d96bSTom Rhodes.\" 2. Redistributions in binary form must reproduce the above copyright 158e13d96bSTom Rhodes.\" notice, this list of conditions and the following disclaimer in the 168e13d96bSTom Rhodes.\" documentation and/or other materials provided with the distribution. 178e13d96bSTom Rhodes.\" 188e13d96bSTom Rhodes.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 198e13d96bSTom Rhodes.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 208e13d96bSTom Rhodes.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 218e13d96bSTom Rhodes.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 228e13d96bSTom Rhodes.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 238e13d96bSTom Rhodes.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 248e13d96bSTom Rhodes.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 258e13d96bSTom Rhodes.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 268e13d96bSTom Rhodes.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 278e13d96bSTom Rhodes.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 288e13d96bSTom Rhodes.\" POSSIBILITY OF SUCH DAMAGE. 298e13d96bSTom Rhodes.\" 308e13d96bSTom Rhodes.\" $FreeBSD$ 318e13d96bSTom Rhodes.\" 32*4426f429SBrad Davis.Dd August 3, 2017 338e13d96bSTom Rhodes.Dt EHCI 4 348e13d96bSTom Rhodes.Os 358e13d96bSTom Rhodes.Sh NAME 368e13d96bSTom Rhodes.Nm ehci 378e13d96bSTom Rhodes.Nd USB Enhanced Host Controller driver 388e13d96bSTom Rhodes.Sh SYNOPSIS 398e13d96bSTom Rhodes.Cd "device ehci" 408e13d96bSTom Rhodes.Sh DESCRIPTION 418e13d96bSTom RhodesThe 428e13d96bSTom Rhodes.Nm 438e13d96bSTom Rhodesdriver provides support for the 448e13d96bSTom Rhodes.Tn USB 458e13d96bSTom RhodesEnhanced Host Controller Interface, 468e13d96bSTom Rhodeswhich is used by 478e13d96bSTom Rhodes.Tn USB 488e13d96bSTom Rhodes2.0 controllers. 498e13d96bSTom Rhodes.Pp 508e13d96bSTom Rhodes.Tn EHCI 518e13d96bSTom Rhodescontrollers are peculiar in that they can only handle the 528e13d96bSTom Rhodes.Tn USB 538e13d96bSTom Rhodes2.0 protocol. 548e13d96bSTom RhodesThis means that they normally have one or more companion controllers 558e13d96bSTom Rhodes(i.e., 568e13d96bSTom Rhodes.Xr ohci 4 578e13d96bSTom Rhodesor 588e13d96bSTom Rhodes.Xr uhci 4 ) 598e13d96bSTom Rhodeshandling USB 1.x devices. 608e13d96bSTom RhodesConsequently each 618e13d96bSTom Rhodes.Tn USB 628e13d96bSTom Rhodesconnector is electrically connected to two 638e13d96bSTom Rhodes.Tn USB 648e13d96bSTom Rhodescontrollers. 658e13d96bSTom RhodesThe handling of this is totally automatic, 668e13d96bSTom Rhodesbut can be noticed since 678e13d96bSTom Rhodes.Tn USB 688e13d96bSTom Rhodes1.x and 698e13d96bSTom Rhodes.Tn USB 708e13d96bSTom Rhodes2.0 devices plugged in to the same 71db4fcadfSConrad Meyerconnector appear to connect to different USB buses. 72f728775bSHans Petter Selasky.Sh LOADER TUNABLES 734e8eb2e0SEitan AdlerWhen the kernel has been compiled with 744e8eb2e0SEitan Adler.Cd options USB_DEBUG , 754e8eb2e0SEitan Adlersome tunables become available that affect the behavior of 764e8eb2e0SEitan Adler.Nm . 774e8eb2e0SEitan AdlerThese tunables can be set at the 78f728775bSHans Petter Selasky.Xr loader 8 79f728775bSHans Petter Selaskyprompt before booting the kernel or stored in 80f728775bSHans Petter Selasky.Xr loader.conf 5 . 81f728775bSHans Petter Selasky.Bl -tag -width "xxxxxx" 82f728775bSHans Petter Selasky.It Va hw.usb.ehci.lostintrbug 83f728775bSHans Petter SelaskyThis tunable enables the lost interrupt quirk. 84f728775bSHans Petter SelaskyThe default value is 0 (off). 85f728775bSHans Petter Selasky.It Va hw.usb.ehci.iaadbug 86f728775bSHans Petter SelaskyThis tunable enables the EHCI doorbell quirk. 87f728775bSHans Petter SelaskyThe default value is 0 (off). 88f728775bSHans Petter Selasky.It Va hw.usb.ehci.no_hs 89f728775bSHans Petter SelaskyThis 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. 90f728775bSHans Petter SelaskyThe default value is 0 (off). 91*4426f429SBrad Davis.Sh MIB Variables 92*4426f429SBrad DavisThe 93*4426f429SBrad Davis.Nm 94*4426f429SBrad Davisdriver exposes the following variables in the 95*4426f429SBrad Davis.Va hw.usb.ehci 96*4426f429SBrad Davisbranch of the 97*4426f429SBrad Davis.Xr sysctl 3 98*4426f429SBrad DavisMIB: 99*4426f429SBrad Davis.Bl -tag -width ".Va debug" 100*4426f429SBrad Davis.It Va debug 101*4426f429SBrad DavisDebug output level, where 0 is debugging disabled and larger values increase 102*4426f429SBrad Davisdebug message verbosity. 103*4426f429SBrad DavisDefault is 0. 104f728775bSHans Petter Selasky.El 105*4426f429SBrad Davis.Sh SEE ALSO 106*4426f429SBrad Davis.Xr ohci 4 , 107*4426f429SBrad Davis.Xr uhci 4 , 108*4426f429SBrad Davis.Xr usb 4 , 109*4426f429SBrad Davis.Xr xhci 4 110*4426f429SBrad Davis.Sh HISTORY 111*4426f429SBrad DavisThe 112*4426f429SBrad Davis.Nm 113*4426f429SBrad Davisdevice driver first appeared in 114*4426f429SBrad Davis.Fx 5.1 . 115