强制USB高速EHCI 2.0集线器枚举为全速UHCI / OHCI设备

时间:2013-11-13 04:10:33

标签: windows usb wdm sysinternals wdf

在Windows XP SP3中是否有注册表项或某些设置,甚至可能在注册表中的设备级别,EHCI USB 2.0高速集线器可以在主机级别枚举为UHCI或OHCI全速设备?

我发现USB 1.1全速设备因高速集线器上的事务转换缓冲区无限NAKd拆分事务而陷入僵局的问题。这仅在某些情况下才会发生,全速设备仅在XP SP3中连接在2.0高速集线器后面。我已向微软公开了一个问题,他们已经确认这是一个已知问题,并且没有针对该问题的Hotfix(也不会开发)。它已在Vista +中得到纠正。

如果设备直接连接到主机控制器,或者在高速集线器上游有一个全速集线器,则问题就会消失(因为没有拆分事务)。因此,如果有办法强制高速集线器枚举为全速设备,那么它可能会帮助我们。

此外,硬件设计也是一成不变的。系统已经开发出来,无法在设计中的任何位置插入全速集线器芯片,或者将设备直接连接到根集线器。最后,不能在系统上升级操作系统。

1 个答案:

答案 0 :(得分:0)

在微软的帮助下进行了一些工作和研究之后,目前的结论是没有办法做到这一点。

我们将使用的解决方法是在总线上执行PnP重置以停止无限NAK,然后重新打开端口以再次开始通信。这不是很干净,但它会解决问题。