Hello, I'm facing a strange problem in my application: I'm developing both the host-side and the gadget-side of a usb connection, implementing both the drivers. The host starts receiving packets on an isochronous-input enpoint and, when data is available on the gadget, it sends such data to the host and it never stops. In this way, a continuous flow of data is generated between host and gadget. I noted that my gadget starts sending packets with some delay, since several void packets are received before data actually arrives to the host. By the way, this initial delay is tolerable. My problem is that sometimes, after a long period of data correctly received, the host stops receiving data and it never restarts anymore. Since I couldn't figure out why this strange behavior happened, I tryed to implement a communication recovery strategy: when data is not received for a while (100 packets lost) the host sends a request to the gadget through an interrupt endpoint. When the gadget receives such request, it checks if data is currently being sent on the iso ep. In this case it "restarts" the endpoint, i.e. usb_ep_disable() and usb_ep_enable() are called. Anyway, this did not solve the problem. What do you think could be a valid recovery strategy for my scenario? Thanks in advance, Daniele -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html