Hi, I have a device that sometimes enters a strange state in which it keeps sending ISO transfers with apparently no content. What happens is that at some point the URB callback function keeps getting called, but summing up the actual_length field over all iso_frame_desc structures of the URB yields 0, which in turn causes the device to no longer respond to userspace. I'm wondering whether this might be an actual hardware bug. Does anybody know whether such behaviour is to be expected, or what an appropriate response would be? Unloading and reloading the driver doesn't help, only unplugging and replugging, or alternatively resetting the USB device, puts the device into a working state again. The device is a TV USB stick (Cinergy Hybrid Stick, driver in staging/tm6000) that's supposed to transmit video frames via the isochronous pipe. Most of the time this works properly, but switching stations repeatedly reliably leads to the above hang (the zero-length ISO transfers mean that no video buffers are queued for consumption by userspace anymore). I've asked about this on the linux-media mailing list already, but nobody's been able to help. Cheers, Thierry
Attachment:
pgp3WMgSetOd9.pgp
Description: PGP signature