如何编程确定的USB端口速度运行Linux内核嵌入式设备?

有帮助吗?

解决方案

可以读/sys/bus/usb/devices/usb?/speed - 它会给你以Mbps为根集线器(或多个)的总线速度:要么1.5,12,480或5000的前两个指示USB1(低速或全速),第三USB2和第四USB3。

其他提示

此而取决于是需要的信息被运行的代码。如果你想修改基于连接速度的内核USB设备驱动程序的行为,然后传递给由USB子系统驾驶员USB_DEVICE结构包含的速度枚举。如果你想在用户空间程序进行检测,然后将设备连接速度尝试走/ SYS /巴士/ USB树,你应该能够通过检查idProduct和idVendor条目,以确定您的USB设备。一旦你有一个匹配,那么速度的记录会给你你所需要的。 如果你有多个设备连接,那么你可能需要计算的方式,以配合USB ID特定的设备。通常USB到设备映射而变化的任何热插拔支持本设备是否提供抽象由USB设备提供的功能的序列号和副系统。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top