NO:
W90P710 Programming Guide
VERSION:
2.1
PAGE:
73
The above information is the exclusive intellectual property of Winbond Electronics and shall not be disclosed,
distributed or reproduced without permission from Winbond.
Table No.: 1200-0003-07-A
The Control
ED
list is created by
Host Controller Driver
(
HCD
), which should add any new
ED
s to
the end of the Control
ED
list.
HCD
must write the physical address of the first
ED
of Control
ED
list to
HcControlHeadED
register. Thus, the HC can find the Control
ED
list and process all Control
ED
s.
Similarly, all Bulk
ED
s are placed in the Bulk
ED
list, which must be pointed by the
HcBulkHeadED
register. And it’s the responsibility of
HCD
to maintain Bulk
ED
list and link
HcBulkHeadED
.
The Interrupt
ED
lists are not directly pointed by any
Host Controller
operation registers, instead,
they are pointed by the InterruptTable of
HCCA
(
Host Controller
Communication Area), which is a
memory area created by
HCD
. In the
HCCA
, there are 32 entries InterruptTable with each entry
points to an Interrupt
ED
list. The structure of Interrupt
ED
lists will be explained in the
HCCA
section.
The end of each Interrupt
ED
list must be linked to the identical 1ms-polling interval Interrupt
ED
list, which is also a part of each Interrupt
ED
list. You may have no any 1ms-polling interval Interrupt
ED
s in some of the real scenes. If it was the case, then you will have a placeholder on the node a
1ms interval Interrupt
ED
should be inserted. It is also true for 2m, 4m, 8m, 16ms, and 32ms polling
interval Interrupt
ED
lists. In fact, an Interrupt
ED
list is composed of these various polling interval
Interrupt
ED
lists.
The Isochronous
ED
list must be linked to the end of the 1ms-polling interval Interrupt
ED
list, that
is, the end of any one Interrupt
ED
list.
Host Controller Driver
must maintain the Interrupt
ED
lists and
Isochronous
ED
list, including the maintenance of
HCCA
and InterruptTable. The
HCCA
is pointed by
HcHCCA
register. Of course,
HCD
is responsible for creating
HCCA
and writing the physical address
of
HCCA
to
HcHCCA
register.
6.4.2 Transfer Descriptor
ED
is used to describe the characteristics of a specific endpoint.
ED
itself does not make HC to
start any data transfer on USB bus. OpenHCI employs
Transfer Descriptor
s (
TD
s) to describe the
details of a USB data transfer. A
Transfer Descriptor
(
TD
) is a system memory data structure that is
used by the
Host Controller
to define a buffer of data that will be moved to or from an endpoint.
Transfer Descriptor
s are linked to queues attached to
ED
s. The
ED
provides the endpoint address