From patchwork Wed Jun 3 11:36:31 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Soeren.Moch@stud.uni-hannover.de X-Patchwork-Id: 27657 Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by demeter.kernel.org (8.14.2/8.14.2) with ESMTP id n53BbwKp032258 for ; Wed, 3 Jun 2009 11:37:58 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754329AbZFCLhy (ORCPT ); Wed, 3 Jun 2009 07:37:54 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753563AbZFCLhy (ORCPT ); Wed, 3 Jun 2009 07:37:54 -0400 Received: from mx.stud.uni-hannover.de ([130.75.176.3]:40326 "EHLO studserv5d.stud.uni-hannover.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752764AbZFCLhy (ORCPT ); Wed, 3 Jun 2009 07:37:54 -0400 Received: from stud.uni-hannover.de (studserv5.stud.uni-hannover.de [130.75.176.5]) by studserv5d.stud.uni-hannover.de (8.14.3/8.14.3) with ESMTP id n53BaWuR016722; Wed, 3 Jun 2009 13:36:57 +0200 (MEST) Received: from phire.mst.uni-hannover.de (phire.mst.uni-hannover.de [130.75.30.51]) by www.stud.uni-hannover.de (Horde Framework) with HTTP; Wed, 03 Jun 2009 13:36:31 +0200 Message-ID: <20090603133631.159278y5l7uv8x0k@www.stud.uni-hannover.de> Date: Wed, 03 Jun 2009 13:36:31 +0200 From: Soeren.Moch@stud.uni-hannover.de To: patrick.boettcher@desy.de Cc: linux-media@vger.kernel.org Subject: Re: dib0700 Nova-TD-Stick problem MIME-Version: 1.0 User-Agent: Internet Messaging Program (IMP) H3 (4.3.2) Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Soeren.Moch wrote: > For a few weeks I use a Nova-TD-Stick and was annoyed with dvb stream > errors, although the demod bit-error-rate (BER/UNC) was zero. > > I could track down this problem to dib0700_streaming_ctrl: > When one channel is streaming and the other channel is switched on, the > stream of the already running channel gets broken. > > I think this is a firmware bug and should be fixed there, but I attach a > driver patch, which solved the problem for me. (Kernel 2.6.29.1, FW > 1.20, Nova-T-Stick + Nova-TD-Stick used together). Since I had to reduce > the urb count to 1, I consider this patch as quick hack, not a real > solution. > > Probably the same problem exists with other dib0700 diversity/dual > devices, without a firmware fix a similar driver patch may be helpful. > > Regards, > Soeren > Hi Patrick, do you see any chance that somebody will fix the firmware? If not, can you take into consideration to remove the dib0700_streaming_ctrl callback as in the (again) attached patch so solve the switch-on problem? The patch runs flawlessly on my vdr system for weeks now. There are no negative side effects from reducing the urb count to 1. If you prefer a patch that removes the callback for all dib0700 devices or only for all dual devices, I can prepare that. But I can test it only with Nova-T-Stick and Nova-TD-Stick. Regards, Soeren --- drivers/media/dvb/dvb-usb/dib0700_devices.c.orig 2009-04-18 16:45:12.000000000 +0200 +++ drivers/media/dvb/dvb-usb/dib0700_devices.c 2009-04-18 18:58:54.000000000 +0200 @@ -290,6 +290,9 @@ static int stk7700d_frontend_attach(stru adap->fe = dvb_attach(dib7000p_attach, &adap->dev->i2c_adap,0x80+(adap->id << 1), &stk7700d_dib7000p_mt2266_config[adap->id]); + adap->props.streaming_ctrl = NULL; + dib0700_streaming_ctrl(adap, 1); + return adap->fe == NULL ? -ENODEV : 0; } @@ -1414,7 +1417,7 @@ MODULE_DEVICE_TABLE(usb, dib0700_usb_id_ .streaming_ctrl = dib0700_streaming_ctrl, \ .stream = { \ .type = USB_BULK, \ - .count = 4, \ + .count = 1, \ .endpoint = ep, \ .u = { \ .bulk = { \