原创作品,允许转载,转载时请务必以超链接形式标明文章
原始出处 、作者信息和本声明。否则将追究法律责任。
http://lancelot.blog.51cto.com/393579/240819
ED数据结构,定义如下:
typedef struct _AT91S_UHP_ED {
volatile unsigned int
Control;
volatile unsigned int
TailP;
volatile unsigned int
HeadP;
volatile unsigned int
NextEd;
}
AT91S_UHP_ED, *
AT91PS_UHP_ED;
|
An Endpoint Descriptor (ED) is a 16-byte, memory resident structure that must be aligned to a 16-byte boundary. The Host Controller traverses lists of EDs and if there are TDs linked to an ED, the Host Controller performs the indicated transfer.
|
3
|
|
|
|
2
|
|
|
|
|
|
|
|
|
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
|
1
|
|
|
|
6
|
|
|
|
|
|
|
|
|
|
6
|
5
|
4
|
3
|
2
|
1
|
0
|
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
0
|
Dword 0
|
—
|
MPS
|
F
|
K
|
S
|
D
|
EN
|
FA
| ||||||||||||||||||||||
Dword 1
|
TD Queue Tail Pointer (TailP)
|
—
| ||||||||||||||||||||||||||||
Dword 2
|
TD Queue Head Pointer (HeadP)
|
0
|
C
|
H
| ||||||||||||||||||||||||||
Dword 3
|
Next Endpoint Descriptor (NextED)
|
—
|
Notes:
1.
Fields containing ‘—’ are not interpreted or modified by the Host Controller and are available for use by the Host Controller Driver for any purpose.
2.
Fields containing ‘0’ must be written to 0 by the Host Controller Driver before queued for Host Controller processing. If Host Controller has write access to the field, it will always write the field to 0.