4 interrupt transaction type, 6 udc device requests, 6 udc device requests -8 – Intel PXA255 User Manual

Page 408: Interrupt transaction formats -8

Advertising
background image

12-8

Intel® PXA255 Processor Developer’s Manual

USB Device Controller

To assemble control transfers, the host sends a control transaction to tell the UDC what type of
control transfer is taking place (control read or control write), followed by one or more data
transactions. The setup is the first stage of the control transfer. The device must respond with an
ACK or no handshake (if the data is corrupted). The control transaction, by default, uses a DATA0
transfer and each subsequent data transaction toggles between DATA1 and DATA0 transfers. A
control write to an endpoint uses OUT transactions. Control reads use IN transactions. The transfer
direction is the opposite of the last data transaction. The transfer direction is used to report status
and functions as a handshake. For a control write, the last transaction is an IN from the UDC to the
host. For a control read, the last transaction is an OUT from the host to the UDC. The last data
transaction always uses a DATA1 transfer, even if the previous transaction used DATA1.

12.3.5.4

Interrupt Transaction Type

The host uses interrupt transactions to query the status of the device. Like bulk transactions,
interrupt transactions begin with a setup packet, followed by an optional data packet, then a
handshake packet. Interrupt transactions, by default, use DATA0 type transfers.

Figure 12-10

shows the four types of interrupt transactions.

12.3.6

UDC Device Requests

The UDC uses its control, status, and data registers to control and monitor the transmit and receive
FIFOs for endpoints 1 - 15. The host controls all other UDC configuration and status reporting
using device requests that are sent as control transactions to endpoint 0 via the USB. Each setup
packet to Endpoint 0 is 8 bytes long and specifies:

Data transfer direction: host to device, device to host

Data transfer type: standard, class, vendor

Data recipient: device, interface, endpoint, other

Number of bytes to transfer

Index or offset

Value: used to pass a variable-sized data parameter

Device request

Table 12-11

shows a summary of all device requests. Refer to the Universal Serial Bus

Specification Revision 1.1 for a full description of host device requests.

Table 12-10. Interrupt Transaction Formats

Action

Token Packet

Data Packet

Handshake Packet

Host successfully received data from UDC

IN

DATA0

ACK

UDC temporarily unable to transmit data

IN

None

NAK

UDC endpoint needs host intervention

IN

None

STALL

Host detected PID, CRC, or bit stuff error

IN

DATA0

None

Packets from UDC to host are boldface

Advertising