我在实现am335x (usb host)与stm32( usb device)通信时遇到如下问题:
1.正常情况下,host与device能正常通信。
2.假如stm32死掉,即device死掉,这时am335x通过usb发送1帧数据给device后,linux控制台就会卡住,要等15秒左右后才正常。
自己的推测:当device死掉后,host发送的1帧数据将发不出去(因为device没有给host应答响应),此时host硬件或者linux usb核心层会重复发送这1帧数据(此时依然是发送失败),当发送的次数或者是时间到达后,将不再尝试发送,此时控制台就会恢复正常。
问题:请问如何修改am335x的usb驱动来减少上述的重发次数或超时时间,从而达到减少am335x linux被卡住的时间。
目的:当device死掉时,减小对host的影响。
谢谢!