【发布时间】:2012-05-04 14:22:20
【问题描述】:
传输描述符包含每次传输持续存在的错误限制。但是,对于 USB 2.0 设备上的每个端点传输,主机控制器上是否存在累积 CRC 错误计数?
【问题讨论】:
传输描述符包含每次传输持续存在的错误限制。但是,对于 USB 2.0 设备上的每个端点传输,主机控制器上是否存在累积 CRC 错误计数?
【问题讨论】:
由于到目前为止(2 个月)还没有人回答这个问题,我将在此说明我的解决方案。
此处记录了USB 3.0 规范(第 10-63 页):
http://www.gaw.ru/pdf/interface/usb/USB%203%200_english.pdf
列出在GET_PORT_ERROR_COUNT 上定义的属性。
由于此属性是 USB 3.0 独有的,因此它目前还不能向后兼容 USB 2.0。由于缺乏 Windows USB 3.0 支持(支持 Windows 8)以及在 POSIX-compliant 机器上对 3.0 标准的 libusb 支持不完整,我无法测试此属性是否符合我的项目。
驱动参考:http://lxr.free-electrons.com/source/include/linux/usb/hcd.h#L517
521 /* class requests from USB 3.0 hub spec, table 10-5 */
522 #define SetHubDepth (0x3000 | HUB_SET_DEPTH)
523 #define GetPortErrorCount (0x8000 | HUB_GET_PORT_ERR_COUNT)
【讨论】: