beautypg.com

6 udc device requests, 6udc device requests -62, Control transaction formats -62 – Intel STRONGARM SA-1100 User Manual

Page 212: Figure 11-21

background image

11-62

SA-1100

Developer’s Manual

Peripheral Control Module

Figure 11-21. Control Transaction Formats

Control transfers are assembled by the host by first sending a control transaction to tell the UDC
what type of control transfer is taking place (control read or control write), followed by two or
more bulk data transactions. The control transaction, by default, uses a DATA0 transfer, and each
subsequent bulk data transaction toggles between DATA1 and DATA0 transfers. For a control write
to an endpoint, OUT transactions are used. For control reads, IN transactions are used. The transfer
direction of the last bulk data transaction is reversed. It is used to report status and functions as a
handshake. The last bulk data transaction always uses a DATA1 transfer by default (even if the
previous bulk transaction used DATA1). For a control write, the last transaction is an IN from the
UDC to the host, and for a control read, the last transaction is an OUT from the host to the UDC.

11.8.1.6

UDC Device Requests

The UDC’s control, status, and data registers are used only to control and monitor the transmit and
receive FIFOs for endpoints 1 and 2. All other UDC configuration and status reporting is controlled
by the host via the USB bus using device requests that are sent as control transactions to endpoint
0. 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

Action

Token Packet

Data Packet

Handshake Packet

UDC successfully received control from host

SETUP

DATA0

ACK

UDC temporarily unable to receive data

SETUP

DATA0

NAK

UDC endpoint needs host intervention

SETUP

DATA0

STALL

UDC detected PID, CRC, or bit stuff error

SETUP

DATA0

None

Packets from UDC to host are boldface