Operation As A Host - Texas Instruments Concerto F28M35 Series Technical Reference Manual

Table of Contents

Advertisement

www.ti.com
18.2.1.1.8 Connect/Disconnect
The USB controller connection to the USB bus is handled by software. The USB PHY can be switched
between normal mode and non-driving mode by setting or clearing the SOFTCONN bit of the
USBPOWER register. When the SOFTCONN bit is set, the PHY is placed in its normal mode, and the
USB0DP/USB0DM lines of the USB bus are enabled. At the same time, the USB controller is placed into
a state, in which it does not respond to any USB signaling except a USB RESET.
When the SOFTCONN bit is cleared, the PHY is put into non-driving mode, USB0DP and USB0DM are
tristated, and the USB controller appears to other devices on the USB bus as if it has been disconnected.
The non-driving mode is the default so the USB controller appears disconnected until the SOFTCONN bit
has been set. The application software can then choose when to set the PHY into its normal mode.
Systems with a lengthy initialization procedure may use this to ensure that initialization is complete, and
the system is ready to perform enumeration before connecting to the USB bus. Once the SOFTCONN bit
has been set, the USB controller can be disconnected by clearing this bit.
Note: The USB controller does not generate an interrupt when the device is connected to the Host.
However, an interrupt is generated when the Host terminates a session.

18.2.2 Operation as a Host

When the USB controller is operating in Host mode, it can either be used for point-to-point
communications with another USB device or, when attached to a hub, for communication with multiple
devices. Before the USB controller's operating mode is changed from Host to Device or Device to Host,
software must reset the USB controller by setting the USB0 bit in the Software Reset Control 2 (SRCR2)
register (see the System Control chapter). Full-speed and low-speed USB devices are supported, both for
point-to-point communication and for operation through a hub. The USB controller automatically carries
out the necessary transaction translation needed to allow a low-speed or full-speed device to be used with
a USB 2.0 hub. Control, bulk, isochronous, and interrupt transactions are supported. This section
describes the USB controller's actions when it is being used as a USB Host. Configuration of IN
endpoints, OUT endpoints, entry into and exit from SUSPEND mode, and RESET are all described.
When in Host mode, IN transactions are controlled by an endpoint's receive interface. All IN transactions
use the receive endpoint registers and all OUT endpoints use the transmit endpoint registers for a given
endpoint. As in Device mode, the FIFOs for endpoints should take into account the maximum packet size
for an endpoint.
Bulk. Bulk endpoints should be the size of the maximum packet (up to 64 bytes) or twice the maximum
packet size if double buffering is used (described further in the following section).
Interrupt. Interrupt endpoints should be the size of the maximum packet (up to 64 bytes) or twice the
maximum packet size if double buffering is used.
Isochronous. Isochronous endpoints are more flexible and can be up to 1023 bytes.
Control. It is also possible to specify a separate control endpoint to communicate with a device.
However, in most cases the USB controller should use the dedicated control endpoint to communicate
with a device's endpoint 0.
18.2.2.1 Endpoints
The endpoint registers are used to control the USB endpoint interfaces which communicate with Device(s)
that are connected. The endpoints consist of a dedicated control IN endpoint, a dedicated control OUT
endpoint, 15 configurable OUT endpoints, and 15 configurable IN endpoints.
The dedicated control interface can only be used for control transactions to endpoint 0 of Devices. These
control transactions are used during enumeration or other control functions that communicate using
endpoint 0 of Devices. This control endpoint shares the first 64 bytes of the USB controller's FIFO RAM
for IN and OUT transactions. The remaining IN and OUT interfaces can be configured to communicate
with control, bulk, interrupt, or isochronous device endpoints.
SPRUH22I – April 2012 – Revised November 2019
Submit Documentation Feedback
Copyright © 2012–2019, Texas Instruments Incorporated
Functional Description
M3 Universal Serial Bus (USB) Controller
1285

Advertisement

Table of Contents
loading

Table of Contents