Intel PXA255 Personal Computer User Manual


 
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