Extensible Host Controller Interface: Difference between revisions

Content deleted Content added
Explain why USB moves the management of polling to the host controller, and add xHCI 1.1.
Line 28:
 
=== Virtualization support ===
Legacy USB host controller architectures exhibit some serious shortcomings when applied to virtualized environments. Legacy USB host controller interfaces define a relatively simple hardware data pump; where critical state related to overall bus management (bandwidth allocation, address assignment, etc.) reside in the software of the host controller driver. Trying to apply the standard hardware IO virtualization technique, of replicating I/O interface registers, to the legacy USB host controller interface is problematic because critical state that must be managed across [[virtual machine]]s (VMs) is not available to hardware. The xHCI architecture moves the control of this critical state into hardware, enabling USB resource management across VMs. The xHCI virtualization features also provide for:u
* Direct-Assignment of individual USB devices (irrespective of their ___location in the bus topology) to any VM.o
* Minimizing run-time inter-VM communications.
* Support for native USB device sharing.