硬件平台是ZYNQ7000,USB PHY是usb3320,内核版本是3.6.0。
插入USB鼠标后可正常检测,插入U盘后就提示HUB不能枚举该设备,在内核中追踪了一下,在hub_port_reset时就出错了,返回的portchange为3,也就是提示又有新设备插入,因此复位一直不成功,内核是xilinx提供的,驱动应该不会有什么问题,但是硬件也一直没什么大的发现,已经纠结了很久了。
鼠标是USB1.0还是USB2.0?有些鼠标是USB1.0设备,对USB系统要求比较低。
应该不是USB Host Controller的问题,从驱动的打印消息来看,是在usb hub对设备进行复位的时候出错的,还没到Host Controller这一步吧~
先是Host Controller配置USB Hub,再是USB Hub配置USB设备。
所以,如果Host Controller配置有问题,USB Hub就不能正确枚举设备。
还是硬件的问题,USB PHY少了一个电容,导致内部供电不稳