背景:
做一个M4项目, USB VCP连接ubuntu. M4 固件里边有几次App的相互调用引导, 最终变成了USB VCP不能再Host那边识别(lsusb都找不到). 通过拔插USB连接线, 会被识别到, 这说明因为主机端没有重新枚举设备造成的, 如何让主机端重新枚举呢?
方法一:
找到对应的USB总线.
lspci | grep USB
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0
xHCI Controller (rev 21)
说明:
OHCI – USB 1.1
EHCI – USB 2.0
xHCI – USB 3.0
ls /sys/bus/pci/drivers/xhci_hcd/
0000:00:14.0 bind new_id remove_id uevent unbind
这里
-
bind – enable the Root Hub
-
unbind – disable the Root Hub
echo -n "0000:00:14.0" | tee /sys/bus/pci/drivers/xhci_hcd/unbind 卸载hub
echo -n "0000:00:14.0" | tee /sys/bus/pci/drivers/xhci_hcd/bind 使能hub
竟然发现 M4的设备被识别了. 好神奇.
阅读(3475) | 评论(0) | 转发(0) |