From patchwork Sun Oct 26 07:56:12 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Olli Salonen X-Patchwork-Id: 26569 Received: from mail.tu-berlin.de ([130.149.7.33]) by www.linuxtv.org with esmtp (Exim 4.72) (envelope-from ) id 1XiIkB-0004rE-LL; Sun, 26 Oct 2014 09:00:07 +0100 X-tubIT-Incoming-IP: 209.132.180.67 Received: from vger.kernel.org ([209.132.180.67]) by mail.tu-berlin.de (exim-4.72/mailfrontend-6) with esmtp id 1XiIk9-0005pu-3e; Sun, 26 Oct 2014 09:00:06 +0100 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751031AbaJZH4b (ORCPT + 1 other); Sun, 26 Oct 2014 03:56:31 -0400 Received: from mail-la0-f42.google.com ([209.85.215.42]:63748 "EHLO mail-la0-f42.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750997AbaJZH4a (ORCPT ); Sun, 26 Oct 2014 03:56:30 -0400 Received: by mail-la0-f42.google.com with SMTP id gf13so4964292lab.15 for ; Sun, 26 Oct 2014 00:56:28 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id; bh=mL5geFpOEWzKxO+U+uWDqi1uFQRayJEZbdIVcaSJFdw=; b=G4QJgMcpnADKLBAWDlEUFUeeBXV9sBBlY+bji4zU6AidmfvWtf+2h/rrw7UrooPTFN 36MNcwBU3nAFlOQznzDNmfU/Uy9N65/u6MBWKtXfWsJ1TBJ388ewynhzDUhp2Hlf5n7+ PluW3DHChWxyhnIQ0/wqQ6Z0y3AG17U7LvbUGd42j7G1gK4OvNIHyzjZRaNd9b0Cb/fy X7LAK98Ajo+RoNpPTdhqQRph7fw9sj7y6g4wpOUCdRkODRjfAqilNKHDdVGIuzXjo7MT 5K46LCplMCIJTy4SbtXZR88CTnIJVaMUzFZalFfBZFsC+vBUDYqWxUBZbEh3VCS49t7E M4yw== X-Gm-Message-State: ALoCoQlRubknUAq1gGRisAAkjyqfjY0kNuVHgj1FYmaNjDzakqhWiSj6JyAmEkFcoBXDxR2B2aGH X-Received: by 10.112.138.39 with SMTP id qn7mr15294712lbb.57.1414310188311; Sun, 26 Oct 2014 00:56:28 -0700 (PDT) Received: from dl160.lan (188-67-84-160.bb.dnainternet.fi. [188.67.84.160]) by mx.google.com with ESMTPSA id n7sm3694205lae.11.2014.10.26.00.56.27 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sun, 26 Oct 2014 00:56:27 -0700 (PDT) From: Olli Salonen To: linux-media@vger.kernel.org Cc: Olli Salonen Subject: [PATCH] cxusb: TS mode setting for TT CT2-4400 Date: Sun, 26 Oct 2014 09:56:12 +0200 Message-Id: <1414310172-25876-1-git-send-email-olli.salonen@iki.fi> X-Mailer: git-send-email 1.9.1 Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org X-PMX-Version: 6.0.0.2142326, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2014.10.26.75121 X-PMX-Spam: Gauge=IIIIIIII, Probability=8%, Report=' HTML_00_01 0.05, HTML_00_10 0.05, SUPERLONG_LINE 0.05, BODYTEXTP_SIZE_3000_LESS 0, BODY_SIZE_1400_1499 0, BODY_SIZE_2000_LESS 0, BODY_SIZE_5000_LESS 0, BODY_SIZE_7000_LESS 0, URI_ENDS_IN_HTML 0, __ANY_URI 0, __CP_URI_IN_BODY 0, __HAS_FROM 0, __HAS_MSGID 0, __HAS_X_MAILER 0, __HAS_X_MAILING_LIST 0, __MIME_TEXT_ONLY 0, __SANE_MSGID 0, __TO_MALFORMED_2 0, __TO_NO_NAME 0, __URI_NO_WWW 0, __URI_NS , __YOUTUBE_RCVD 0' There is a new version of the TechnoTrend CT2-4400 USB tuner. The difference is the demodulator that is used (Si2168-B40 instead of -A30). For TT CT2-4400v2 a TS stream related parameter needs to be set, otherwise the stream becomes corrupted. The Windows driver for both CT2-4400 and CT2-4400v2 sets this as well. After this patch the driver works for both versions. Signed-off-by: Olli Salonen Reviewed-by: Antti Palosaari --- drivers/media/usb/dvb-usb/cxusb.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/media/usb/dvb-usb/cxusb.c b/drivers/media/usb/dvb-usb/cxusb.c index 356abb3..8925b3946 100644 --- a/drivers/media/usb/dvb-usb/cxusb.c +++ b/drivers/media/usb/dvb-usb/cxusb.c @@ -1438,6 +1438,12 @@ static int cxusb_tt_ct2_4400_attach(struct dvb_usb_adapter *adap) si2168_config.i2c_adapter = &adapter; si2168_config.fe = &adap->fe_adap[0].fe; si2168_config.ts_mode = SI2168_TS_PARALLEL; + + /* CT2-4400v2 TS gets corrupted without this */ + if (d->udev->descriptor.idProduct == + USB_PID_TECHNOTREND_TVSTICK_CT2_4400) + si2168_config.ts_mode |= 0x40; + memset(&info, 0, sizeof(struct i2c_board_info)); strlcpy(info.type, "si2168", I2C_NAME_SIZE); info.addr = 0x64;