![Freescale Semiconductor MCF54455 Reference Manual Download Page 278](http://html1.mh-extra.com/html/freescale-semiconductor/mcf54455/mcf54455_reference-manual_2330541278.webp)
Universal Serial Bus Interface – On-The-Go Module
Freescale Semiconductor
10-71
10.5.3.6
Managing Transfers with Transfer Descriptors
10.5.3.6.1
Software Link Pointers
It is necessary for the DCD software to maintain head and tail pointers 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 executed. The operations described in the next section for managing dTDs assumes
DCD can 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 DCD must continue maintaining the
pointers.
Figure 10-45. Software Link Pointers
NOTE
Check the status of each dTD to determine completed status.
10.5.3.6.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.
Allocate an 8-longword dTD block of memory aligned to 8-longword boundaries. The last 5 bits of the
address must equal 00000.
Write the following fields:
1. Initialize the first 7 longwords to 0.
2. Set the terminate bit.
3. Fill in total bytes with transfer size.
4. Set the interrupt on complete bit if desired.
5. Initialize the status field with the active bit set, and all remaining status bits cleared.
6. Fill in buffer pointer page 0 and the current offset to point to the start of the data buffer.
7. Initialize buffer pointer page 1 through page 4 to be one greater than each of the previous buffer
pointers.
Endpoint QH
current
next
Tail Pointer
Head Pointer
Queued dTDs
Completed dTDs
Summary of Contents for MCF54455
Page 33: ...xxviii Freescale Semiconductor ...
Page 67: ...Freescale Semiconductor 1 ...
Page 125: ...Freescale Semiconductor 1 ...
Page 145: ...Enhanced Multiply Accumulate Unit EMAC 5 21 Freescale Semiconductor ...
Page 173: ...Cache 6 28 Freescale Semiconductor ...
Page 179: ...Static RAM SRAM 7 6 Freescale Semiconductor ...
Page 207: ...Power Management 9 16 Freescale Semiconductor ...
Page 323: ...Reset Controller Module 13 8 Freescale Semiconductor ...
Page 389: ...Pin Multiplexing and Control 16 44 Freescale Semiconductor ...
Page 575: ...PCI Bus Controller 22 58 Freescale Semiconductor ...
Page 600: ...Advanced Technology Attachment ATA Freescale Semiconductor 23 25 ...
Page 601: ...Freescale Semiconductor 1 ...
Page 842: ...I2 C Interface Freescale Semiconductor 33 16 ...
Page 843: ...Freescale Semiconductor 1 ...
Page 921: ...Revision History A 6 Freescale Semiconductor ...