Texas Instruments OMAP5912 Reference Manual page 1463

Multimedia processor device overview and architecture
Hide thumbs Also See for OMAP5912:
Table of Contents

Advertisement

3.24
Non-ISO, Non-Control IN Endpoint Transmit Interrupt Handler
Figure 32.
Non-Isochronous Non-Control Endpoint Transmit Interrupt Handler
Non-ISO TX handler
(NAK disabled
STAT_FLG.
Yes
ACK = 1?
(Data packet
received?)
No. Must be STAT_FLG.STALL.
LH initiated
Yes
stall and can
remove stall?
No
SPRU761A
Figure 32 shows the operations necessary to handle non-ISO, non-control IN
endpoint-specific transmit interrupts. This flowchart shows two TX transaction
handshaking interrupts. There is a third interrupt handshaking possibility when
NAK interrupts are enabled, which is not depicted here. Depending on the
application-specific actions needed for various endpoints in the real system,
it is possible to use one routine that is common to all of the non-ISO,
non-control transmit endpoints, where the only differences are in the EP_NUM
register value set and in the routine selection of the application TX buffer (see
Figure 33).
This flowchart does not attempt to document control endpoint 0 transmit
interrupts, which are discussed separately because of the more complex
three-stage transfer mechanism used for control reads.
TX data that was previously placed in the endpoint's TX FIFO
remains in the application's buffer until that data is properly
sent to the USB host and receives an ACK.
Caution: If double-buffer is used, the local host must retire
from its buffer the first packet that was written into TX FIFO.
Retire the data that
was just sent to the
USB host from the
application's endpoint
TX buffer.
Set CTRL.Cir_HALT
(remove halt condition).
Application−
specific activity
More data to send
because data
successfully
sent
Yes
Write non-ISO TX
FIFO data
Application-
specific actions
to remove stall
Universal Serial Bus (USB)
USB Device Controller
No
for this endpoint?
Set
CTRL.SET_FIFO_EN
to 1.
End of non-ISO TX
handler
171

Advertisement

Table of Contents
loading

Table of Contents