From patchwork Tue Apr 21 11:54:04 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: 19163 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 n3LCLnJs019727 for ; Tue, 21 Apr 2009 12:21:49 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751017AbZDUMVs (ORCPT ); Tue, 21 Apr 2009 08:21:48 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751771AbZDUMVs (ORCPT ); Tue, 21 Apr 2009 08:21:48 -0400 Received: from studserv.stud.uni-hannover.de ([130.75.176.2]:53382 "EHLO studserv.stud.uni-hannover.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751017AbZDUMVr (ORCPT ); Tue, 21 Apr 2009 08:21:47 -0400 X-Greylist: delayed 1644 seconds by postgrey-1.27 at vger.kernel.org; Tue, 21 Apr 2009 08:21:47 EDT Received: from stud.uni-hannover.de (studserv5 [130.75.176.5]) by studserv.stud.uni-hannover.de (8.13.8/8.13.8) with ESMTP id n3LBs5l3013335; Tue, 21 Apr 2009 13:54:06 +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; Tue, 21 Apr 2009 13:54:04 +0200 Message-ID: <20090421135404.11167ckosxkvftwk@www.stud.uni-hannover.de> Date: Tue, 21 Apr 2009 13:54:04 +0200 From: Soeren.Moch@stud.uni-hannover.de To: linux-media@vger.kernel.org Cc: patrick.boettcher@desy.de Subject: dib0700 Nova-TD-Stick problem MIME-Version: 1.0 User-Agent: Internet Messaging Program (IMP) H3 (4.3.2) X-Spam-Report: ALL_TRUSTED,BAYES_00,TW_DV,USER_IN_WHITELIST_TO Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org 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 --- 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 = { \