From patchwork Wed May 8 22:50:55 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Reinhard Nissl X-Patchwork-Id: 2542061 Return-Path: X-Original-To: patchwork-linux-media@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork1.kernel.org (Postfix) with ESMTP id E156A3FE80 for ; Wed, 8 May 2013 22:51:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754058Ab3EHWvJ (ORCPT ); Wed, 8 May 2013 18:51:09 -0400 Received: from mout.gmx.net ([212.227.15.18]:50357 "EHLO mout.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753353Ab3EHWvH (ORCPT ); Wed, 8 May 2013 18:51:07 -0400 Received: from mailout-de.gmx.net ([10.1.76.28]) by mrigmx.server.lan (mrigmx001) with ESMTP (Nemesis) id 0MTdXC-1V0Zkw1Dc0-00QWgB for ; Thu, 09 May 2013 00:51:06 +0200 Received: (qmail invoked by alias); 08 May 2013 22:51:06 -0000 Received: from pD95F13AA.dip0.t-ipconnect.de (EHLO corei7.home.test) [217.95.19.170] by mail.gmx.net (mp028) with SMTP; 09 May 2013 00:51:06 +0200 X-Authenticated: #527675 X-Provags-ID: V01U2FsdGVkX19oBARDAShoLHI7qoO7RMLzN26PCUM6M7T+l4DIUy PPQukIfOml24/N Received: by corei7.home.test (Postfix, from userid 0) id 5F99B16E80; Thu, 9 May 2013 00:50:59 +0200 (CEST) From: =?UTF-8?q?Reinhard=20Ni=C3=9Fl?= To: linux-media@vger.kernel.org Cc: =?UTF-8?q?Reinhard=20Ni=C3=9Fl?= Subject: [PATCH 2/3] stb0899: store autodetected inversion while tuning in non S2 mode Date: Thu, 9 May 2013 00:50:55 +0200 Message-Id: <1368053456-18475-2-git-send-email-rnissl@gmx.de> X-Mailer: git-send-email 1.8.1.4 In-Reply-To: <1368053456-18475-1-git-send-email-rnissl@gmx.de> References: <1368053456-18475-1-git-send-email-rnissl@gmx.de> MIME-Version: 1.0 X-Y-GMX-Trusted: 0 Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org In non S2 mode, the device is able to autodetect inversion. So let's store it for tuning to S2 transponders. Signed-off-by: Reinhard Nißl --- drivers/media/dvb-frontends/stb0899_algo.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/media/dvb-frontends/stb0899_algo.c b/drivers/media/dvb-frontends/stb0899_algo.c index 4b49efb..4ce542c 100644 --- a/drivers/media/dvb-frontends/stb0899_algo.c +++ b/drivers/media/dvb-frontends/stb0899_algo.c @@ -425,6 +425,14 @@ static enum stb0899_status stb0899_search_data(struct stb0899_state *state) if (internal->status == DATAOK) { stb0899_read_regs(state, STB0899_CFRM, cfr, 2); /* get derotator frequency */ + + /* store autodetected IQ swapping as default for DVB-S2 tuning */ + reg = stb0899_read_reg(state, STB0899_IQSWAP); + if (STB0899_GETFIELD(SYM, reg)) + internal->inversion = IQ_SWAP_ON; + else + internal->inversion = IQ_SWAP_OFF; + internal->derot_freq = state->config->inversion * MAKEWORD16(cfr[0], cfr[1]); dprintk(state->verbose, FE_DEBUG, 1, "------> DATAOK ! Derot Freq=%d", internal->derot_freq); }