USB Host Controller
1560
SPNU503C – March 2018
Copyright © 2018, Texas Instruments Incorporated
Universal Serial Bus (USB)
29.2.7.7 OHCI Root Hub Status Change
The OHCI root hub status change interrupt is supported as described in the
OHCI Specification for USB
.
29.2.7.8 OHCI Ownership Change Interrupt
The optional OHCI ownership change interrupt is not supported.
29.2.8 USB Host Controller Access to System Memory
The USB host controller has access to system memory to read and write the OHCI data structures and
data buffers associated with USB traffic.
29.2.9 Physical Addressing
All system memory accesses initiated by the USB host controller use physical addresses.
29.2.10 USB Host Controller Bus Addressing and OHCI Data Structure Pointers
The USB host controller OHCI registers that point to the HCCA and the ED lists must be programmed with
values that correspond to the physical addresses of the particular data structure. System software must
use physical addresses when manipulating the OHCI control registers that point to the HCCA, and to the
ED and TD lists. System software must also use physical addresses for the ED and TD pointers that are
stored within ED and TD entries.
The USB host controller driver software must also be able to examine the list of completed transfer
descriptors that the host controller creates as it retires transfer descriptors. This list is pointed to by the
HCDONEHEAD register, which contains a physical address that points to the most recent transfer
descriptor that has been retired.
29.2.11 NULL Pointers
The
OHCI Specification for USB
uses NULL pointers to indicate the end of a list. The USB host controller
compares the ED and TD pointers against the value 0x00000000 to determine if the pointer is a null
pointer. Address conversion routines must understand this usage.
29.2.12 USB Host Controller Power Management
Power management of the USB host controller is limited to disabling the clock to the USB host by clearing
UHOST_EN. When UHOST_EN is 0, the USB host controller clocks are disabled and the USB host
controller is held in reset. The USB signal multiplexing controlled by register in the I/O Multiplexing Module
(IOMM).
When the host controller 48-MHz clock is disabled or UHOST_EN is 0, all USB host controller OHCI
registers and the HOSTUEADDR, HOSTUESTATUS, HOSTTIMEOUTCTRL, and HOSTREVISION
registers are inaccessible.
29.3 USB Device Controller
The USB device controller supports the implementation of a full-speed device fully compliant with the USB
1.1 standard.
It provides an interface between the host processor and the USB wire and handles USB transactions with
minimal CPU software intervention.
The USB device controller module supports one control endpoint (EP0), up to 15 IN endpoints, and up to
15 OUT endpoints. The exact endpoint configuration is software programmable. The specific items of a
configuration are for each endpoint, the size in bytes, the direction (IN, OUT), the type (bulk/interrupt or
ISO), and the associated number.
The USB device controller module also supports three DMA channels for IN endpoints and three DMA
channels for OUT endpoints for either bulk/interrupt or ISO transactions.