Re: Terratec Cinergy Hybrid XE (TM6010 Mediachip)

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

 



Stefan Ringel wrote:
> Hi,
> 
> I have a problem with usb bulk transfer. After a while, as I scan digital channel (it found a few channel), it wrote this in the log:
> 
> Jan 26 21:58:35 linux-v5dy kernel: [  548.756585] tm6000: status != 0
> 
> I updated the tm6000_urb_received function so that I can read the Error code and it logged:
> 
> Jan 27 17:41:28 linux-v5dy kernel: [ 3121.892793] tm6000: status = 0xffffffb5

Probablt it is this error:
#define EOVERFLOW       75      /* Value too large for defined data type */

It would be good to make it display the error as a signed int.

the tm6000-video error handler has some common causes for those status.
In this particular case:

        case -EOVERFLOW:
                errmsg = "Babble (bad cable?)";
                break;

This looks the same kind of errors I was receiving during the development of the driver:
a large amount of frames are got broken, even if the device is programmed with the exact
values used on the original driver. On my tests, changing the URB size were changing
the position where such errors were occurring.

> 
> Can you help me? Who I can calculate urb size?

Take a look on tm6000-video:

        size = usb_maxpacket(dev->udev, pipe, usb_pipeout(pipe));

        if (size > dev->max_isoc_in)
                size = dev->max_isoc_in;

It depends on the alternate interface used. The driver should select an alternate
interface that is capable of receiving the entire size of a message. Maybe the tm6000
driver is missing the code that selects this size. Take a look on em28xx-core, at
em28xx_set_alternate() code for an example on how this should work.

The calculated size there assumes that each pixel has 16 bits, and has some magic that
were experimentally tested on that device.

Cheers,
Mauro.

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux