EHCI(4)

NAME
ehci - USB Enhanced Host Controller driver

SYNOPSIS
device ehci

DESCRIPTION
The ehci driver provides support for the USB Enhanced Host Controller Interface, which is used by USB 2.0 controllers.

EHCI controllers are peculiar in that they can only handle the USB 2.0 protocol. This means that they normally have one or more companion controllers (i.e., ohci(4) or uhci(4)) handling USB 1.x devices. Consequently each USB connector is electrically connected to two USB controllers. The handling of this is totally automatic, but can be noticed since USB 1.x and USB 2.0 devices plugged in to the same connector appear to connect to different USB buses.

LOADER TUNABLES
When the kernel has been compiled with options USB_DEBUG, some tunables become available that affect the behavior of ehci. These tunables can be set at the loader(8) prompt before booting the kernel or stored in loader.conf(5).

hw.usb.ehci.lostintrbug
    This tunable enables the lost interrupt quirk. The default value is 0 (off).

hw.usb.ehci.iaadbug
    This tunable enables the EHCI doorbell quirk. The default value is 0 (off).

hw.usb.ehci.no_hs
    This 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. The default value is 0 (off).

SYSCTL VARIABLES
The following variables are available as both sysctl(8) variables and loader(8) tunables:

hw.usb.ehci.debug
    Debug output level, where 0 is debugging disabled and larger values increase debug message verbosity. Default is 0.

SEE ALSO
ohci(4), uhci(4), usb(4), xhci(4)

HISTORY
The ehci device driver first appeared in FreeBSD 5.1.