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



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

我看到一个问题,即USB 1.1全速设备由于与高速集线器上的事务转换器缓冲区无限NAKd拆分事务而死锁。这仅在XP SP3中全速设备连接到2.0高速集线器后面的特定情况下才会发生。我已经打开了一个问题Microsoft他们已经确认这是一个已知问题,并且没有针对该问题的修补程序(也不会开发一个)。它已在 Vista+ 中得到纠正。

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

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

在Microsoft的帮助下经过一些工作和研究,目前的结论是没有办法做到这一点。

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

最新更新