您的位置:首页 > 其它

xHCI USB host controller & Debug Capability & Windows debug module

2017-03-18 21:26 615 查看
大部分市面上的xHCI USB host controller都必须支持Debug Capability. (也有部分不支持的,不知道,他们有没有取得USB-IF的CERTIFICATION)

Win8/8.1/10支持USB3.0/3.1的双机调试,运用的就是xHCI USB host controller的这个Debug Capability.

调试的时候,一边是USB3.0/3.1的调试机,另一边则USB3.0/3.1的被调试机,被调试机的USB3.0/3.1 host 运行在USB Debug Device模式下。

调试机这边,有一个USB DEBUG DEVICE DRIVER

被调试机这边,需要将WINDOWS的内核调试模块打开

微软的各类USB驱动都非常ROBUST,例如O/UHCI/EHCI/XHCI, HUB 2.0, HUB 3.0, MASS STORAGE, VIDEO, AUDIO, PRINTER, USB HID, 等。

但这个USB的内核调试模块,总感觉不是特别对劲。

大家可以做这样一个实验,

1. 硬件上找一块带有XHCI USB DEBUG CAPABILITY的XHCI HOST

将它插到主机上,一般是PCIE X 2

2.软件上,

在内核调试模块没有打开前,在DEVICE MANAGER中,将这个XHCI HOST, DISABLE

将系统的内核调试模块打开,并设置为USB, 以及对应的BUS.DEVICE.FUNCTION

重启

回到DEVICE MANAGER, 发现这个XHCI HOST是处于DISABLED状态的

ENABLE该XHCI HOST, 你会发现,系统像死机一样,STUCK几秒钟

3.问题在哪?

问题在于,这个USB内核调试模块,不停地CHECK USB DEBUG CAPABILITY的两个寄存器(DBC PORTSC与DBC CTRL)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: