!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
...