Re: TT-USB2.0 and high bitrate packet loss (DVB-C/T)

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

 



On 05/30/13 10:00, Hans Petter Selasky wrote:
Hi there,

I need to get in concat with someone that can handle, test and review a
patch for TT-USB2.0. I've found that for certain high-bitrate streams,
the TT-USB2.0 sends more ISOCHRONOUS MPEG data than is specified in the
wMaxPacketSize fields. I have a USB analyzer capture which shows this
clearly. This of course won't be received at the USB host and packet
drops appear inside the stream. The solution is to use another alternate
setting. The technotrend chip has many of these. I've now tested using
alternate setting 7 instead of 3.

Alternate setting 7 allows transferring a maximum of 3 * 1024 bytes.
Alternate setting 3 allows transferring a maximum of 1 * 940 bytes.

--HPS

Hi,

It turns out that this device, at least the version I bought, does not work with the XHCI at all when using multi-packet transfers, alternate setting 7, because DATA2 PID is used when transfer is less than 1024 bytes. It should be DATA0 PID first, then 1 and 2 in the end. Probably a firmware update can fix this, but I'm not aware about if such exists. The PID issue was found using a USB analyzer.

Apparently this bug has gone undetected, because at least the EHCI high speed only controller I've got silently ignores this kind of errors and receives the data whilst the XHCI not. Conclusion:
Existing alternate setting must be used.

I think I will have to get another USB based receiver with CI slot. Any recommendations for DVB-T ?

--HPS

--
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