!usbkd.usbhcdpow
!usbkd.usbhcdpow 命令會顯示USB主機控制器或根中樞的電源狀態歷程記錄。
!usbkd.usbhcdpow DeviceExtension
參數
DeviceExtension
下列其中一個位址:
- USB 主機控制器功能裝置物件 (FDO) 的裝置延伸模組。
- 實體裝置物件的裝置延伸模組 (PDO) USB 根中樞。
DLL
Usbkd.dll
範例
以下是尋找 EHCI 主機控制器 FDO 之裝置延伸模組位址的其中一種方式。 首先輸入 !usbkd.usb2tree。
0: kd> !usbkd.usb2tree
...
2)!ehci_info ffffe00001ca11a0 !devobj ffffe00001ca1050 PCI: VendorId 8086 DeviceId 293c RevisionId 0002
...
在上述輸出中,FDO 的裝置延伸模組地址會顯示為 DML 命令的自變數 !ehci_info ffffe00001ca11a0。
現在,將裝置延伸模組的位址傳遞至 !usbhcdpow 命令。
0: kd> !usbkd.usbhcdpow ffffe00001ca11a0
dt USBPORT!_FDO_EXTENSION ffffe00001ca15a0
## State History (latest at bottom)
## EVENT STATE NEXT
[00] FdoPwrEv_D0_DoSetD0_2 FdoPwr_D0_WaitWorker2 FdoPwr_D0_WaitSyncUsb2 dt:0 ms
[01] FdoPwrEv_SyncUsb2_DoChirp FdoPwr_D0_WaitSyncUsb2 FdoPwr_D0_WaitSyncUsb2 dt:0 ms
[02] FdoPwrEv_Rh_SetPowerSys FdoPwr_D0_WaitSyncUsb2 FdoPwr_D0_WaitSyncUsb2 dt:0 ms
[03] FdoPwrEv_Rh_SetD0 FdoPwr_D0_WaitSyncUsb2 FdoPwr_D0_WaitSyncUsb2 dt:0 ms
[04] FdoPwrEv_SyncUsb2_Complete FdoPwr_D0_WaitSyncUsb2 FdoPwr_WaitSx dt:50 ms
[05] FdoPwrEv_Rh_Wake FdoPwr_WaitSx FdoPwr_WaitSx dt:3412 ms
[06] FdoPwrEv_Rh_Wake FdoPwr_WaitSx FdoPwr_WaitSx dt:283872 ms
[07] FdoPwrEv_Rh_Wake FdoPwr_WaitSx FdoPwr_WaitSx dt:25481267 ms
以下是尋找根中樞 PDO 之裝置延伸模組位址的其中一種方式。 首先輸入 !usbkd.usb2tree。
0: kd> !usbkd.usb2tree
...
2)!ehci_info ffffe00001ca11a0 !devobj ffffe00001ca1050 PCI: VendorId 8086 DeviceId 293c RevisionId 0002
RootHub !hub2_info ffffe000023201a0 !devstack ffffe00002320050
...
在上述輸出中,您可以看到根中樞的 FDO 位址顯示為命令 !devstack ffffe00002320050 的自變數。 使用 !devstack 命令來尋找 PDO 和 PDO 裝置擴充功能的位址。
0: kd> !kdexts.devstack ffffe00002320050
!DevObj !DrvObj !DevExt ObjectName
> ffffe00002320050 \Driver\usbhub ffffe000023201a0 0000002d
ffffe0000213c050 \Driver\usbehci ffffe0000213c1a0 USBPDO-3
...
在上述輸出中,您可以看到根中樞 PDO 的裝置擴充位址為 ffffe0000213c1a0
。
現在,將裝置延伸模組的位址傳遞至 !usbhcdpow 命令。
0: kd> !usbkd.usbhcdpow ffffe0000213c1a0
dt USBPORT!_FDO_EXTENSION ffffe0000213c5a0
## State History (latest at bottom)
## EVENT STATE NEXT
...