User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 405
UG585 (v1.11) September 27, 2016
Chapter 15: USB Host, Device, and OTG Controller
15.3.1 Hardware/Software System
The physical and virtual data flows for a USB hardware/software system are illustrated in
Figure 15-10. These flows form the basis of USB. The TRM is focused on the operations of the bus
interface and device layers as a foundation for writing drivers that include the functional layer.
15.3.2 Operational Mode Control
States
The controller can be configured for device mode or host mode. In OTG mode, the controller must
perform tasks independent of the device and host controller modes to determine what mode to put
the controller into. Software can use the usb.USBCMD [RST] reset bit to reset the vast majority of the
controller, but preserve register values and controller state to support OTG operations. This reset
transitions the controller out of host or device mode and into an idle state as shown in figure
Figure 15-11. OTG tasks are performed independent of the [RST] bit reset as well as independent of
the controller mode.
The software sets the usb.USBMODE [CM] mode bit to select either host or device mode.
X-Ref Target - Figure 15-10
Figure 15-10: USB System Stack
UG585_c15_39_030713
Data pipes
Application
Software
System
Software
Host
Controller
Function
Interface
USB Logical
Device
Bus
Interface
USB Host
Control pipe
USB Cabling and Hubs
USB Device
Function Layer
Device Layer
Bus Interface Layer
Virtual Data Flow
Physical Data Flow
Endpoints