Information

Universal Serial Bus Interface
MPC8308 PowerQUICC II Pro Processor Reference Manual, Rev. 1
Freescale Semiconductor 13-145
NOTE
After the acknowledge has occurred, the DCD must not attempt to access
the setup buffer in the dQH - RX. Only the local software copy should be
examined.
3. Check for pending data or status dTD’s from previous control transfers and flush if any exist as
discussed in Section 13.8.5.5, “Flushing/De-Priming an Endpoint.”
NOTE
It is possible for the device controller to receive setup packets before
previous control transfers complete. Existing control packets in progress
must be flushed and the new control packet completed.
4. Decode setup packet and prepare data phase [optional] and status phase transfer as required by the
USB Chapter 9 or application specific protocol.
13.8.5 Managing Transfers with Transfer Descriptors
13.8.5.1 Software Link Pointers
It is necessary for the DCD software to maintain head and tail pointers to the for the linked list of dTDs
for each respective queue head. This is necessary because the dQH only maintains pointers to the current
working dTD and the next dTD to be executed. The operations described in next section for managing dTD
will assume the DCD can use reference the head and tail of the dTD linked list.
NOTE
To conserve memory, the reserved fields at the end of the dQH can be used
to store the Head and Tail pointers but it still remains the responsibility of
the DCD to maintain the pointers.
Figure 13-65 shows the software link pointers.
Figure 13-65. Software Link Pointers
13.8.5.2 Building a Transfer Descriptor
Before a transfer can be executed from the linked list, a dTD must be built to describe the transfer. Use the
following procedure for building dTDs.
Endpoint QH
Current
Next
Head Pointer Tail Pointer
Completed dTDs Queued dTDs