http://smilejay.com/2012/10/usb_controller_xhci/
Encountered something about the USB (below), has not understood what usb1.0/1.1/2.0/3.0, of course, I know that their respective transmission speed is improving, this article makes a simple record, as far as possible to download the USB to see things and others mentioned the terms of the USB do not be confused.
1. Some Linux systems have experienced a USB3.0 of support, resulting in a failure to start on a PC with USB3.0 devices (kernel panic).
2. Also in the BIOS set to "Turn on EHCI, turn off XHCI" and so on to adhere to the use of USB2.0
3. See the various configurations it supports in QEMU code: "Config_usb_ohci=y", "config_usb_uhci=y", "config_usb_ehci=y", "config_usb_xhci=y" and so on.
4. See "Config_usb_ohci_hcd=m", "Config_usb_uhci_hcd=m", "Config_usb_ehci_hcd=m", "Config_usb_xhci_" in the CONFIG file of kernel. Hcd=m "and so on.
So, here's a simple list of the basic meanings of various xhci (including real xhci).
Simply put, OHCI, UHCI are USB1.1 interface standards, and EHCI is the corresponding USB2.0 interface standard, the latest XHCI is USB3.0 interface standard.
1. OHCI (Open Host Controller Interface) is a standard that supports USB1.1, but it is not just for USB, but it also supports other interfaces, such as Apple's FireWire (firewire,ieee 1394) interface. Compared with UHCI, the hardware of OHCI is complex, the hardware does more things, so it is relatively simple to realize the corresponding software-driven task. Mainly used for non-x86 USB, such as expansion card, embedded Development Board, USB host control.
2. UHCI (Universal Host Controller Interface) is an Intel-led interface standard for USB1.0 and 1.1, incompatible with OHCI. UHCI's software-driven task is heavy and needs to be done more complex, but can be used with less expensive, simpler hardware for USB controllers. Intel and Via use UHCI, while the rest of the hardware providers use OHCI.
3. EHCI (Enhanced Host Controller Interface) is the Intel-led interface standard for USB2.0. the EHCI provides only USB2.0 high-speed functionality, and relies on UHCI or OHCI to provide support for full-speed (full-speed) or low-speed (low-speed) devices.
4. XHCI (extensible Host Controller Interface), is the latest and most fire USB3.0 interface standard, it in the speed, energy saving, virtualization and other aspects than the previous 3 has a greater improvement. XHCI supports all kinds of speed USB devices (USB 3.0 SuperSpeed, USB 2.0 low-, full-, and high-speed, USB 1.1 Low-and full-speed). The purpose of the XHCI is to replace the previous 3 (UHCI/OHCI/EHCI).
All right, that's it.
Resources:
Http://en.wikipedia.org/wiki/Host_controller_interface_ (Usb,_firewire) #USB
The following links are a good summary of USB-related fundamentals:
Http://www.crifan.com/files/doc/docbook/usb_basic/release/webhelp/content/ch02_sw_hw.xml.html
Several USB controller types: OHCI,UHCI,EHCI,XHCI