!usbkd._ehcitd
!usbkd._ehcitd 명령은 usbehci!_TRANSFER_CONTEXT 구조체의 정보를 표시합니다. 이 명령을 사용하여 비동기 엔드포인트(즉, 제어 및 대량 엔드포인트)에 대한 정보를 표시합니다.
!usbkd._ehcitd StructAddr
매개 변수
StructAddr
usbehci!_TRANSFER_CONTEXT 구조체의 주소입니다.
DLL
Usbkd.dll
예제
이 예제에서는 usbehci!_TRANSFER_CONTEXT 구조체의 주소를 가져오는 한 가지 방법을 보여줍니다. !_ehciep 사용하여 엔드포인트에 대한 정보를 표시합니다.
0: kd> !_ehciep ffffe000001ab618
*USBEHCI
dt usbehci!_ENDPOINT_DATA ffffe000001ab618
Flags: 0x00000000
dt usbehci!_HCD_QUEUEHEAD_DESCRIPTOR ffffd00021e65080
*HwQH ffffd00021e65080
HwQH
HwQH.HLink dea2e002
HwQH.EpChars 02002201
DeviceAddress: 0x1
IBit: 0x0
EndpointNumber: 0x2
...
slot[0] dt usbehci!_ENDPOINT_SLOT ffffe000001ab798 - slot_NotBusy
----
ffffd00021e65100
dt usbehci!_HCD_TRANSFER_DESCRIPTOR ffffd00021e65100
....
앞의 출력 ffffd00021e65100
에서 usbehci!_TRANSFER_CONTEXT 구조체의 주소입니다. 이 주소를 !_ehcitd 전달합니다.
0: kd> !_ehcitd ffffd00021e65100
*USBEHCI TD 21e65100
Sig 20td
qTD
Next_qTD: d83cc200
AltNext_qTD: d83cc180
Token: 0x00000c00
PingState: 0x0
SplitXstate: 0x0
MissedMicroFrame: 0x0
XactErr: 0x0
BabbleDetected: 0x0
DataBufferError: 0x0
Halted: 0x0
Active: 0x0
Pid: 0x0 - HcTOK_Out
ErrorCounter: 0x3
C_Page: 0x0
InterruptOnComplete: 0x0
BytesToTransfer: 0x0
DataToggle: 0x0
BufferPage[0]: 0x 0bad0-000 0bad0000 BufferPage64[0]: 00000000
BufferPage[1]: 0x 0bad0-000 0bad0000 BufferPage64[1]: 00000000
BufferPage[2]: 0x 0bad0-000 0bad0000 BufferPage64[2]: 00000000
BufferPage[3]: 0x 0bad0-000 0bad0000 BufferPage64[3]: 00000000
BufferPage[4]: 0x 0bad0-000 0bad0000 BufferPage64[4]: 00000000
Packet:00 52 e6 21 00 d0 ff ff
PhysicalAddress: d83cc100
EndpointData: 001ab618
TransferLength : 0000001f
TransferContext: 00000000
Flags: 00000041
TD_FLAG_BUSY
NextHcdTD: 21e65200
AltNextHcdTD: 21e65180
SlotNextHcdTD: 21e65200