USB device keeps sending zero-length ISO transfers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux