From patchwork Tue Feb 1 22:40:36 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Igor M. Liplianin" X-Patchwork-Id: 5776 Return-path: Envelope-to: mchehab@pedra Delivery-date: Tue, 01 Feb 2011 20:41:39 -0200 Received: from mchehab by pedra with local (Exim 4.72) (envelope-from ) id 1PkOup-0002oe-1V for mchehab@pedra; Tue, 01 Feb 2011 20:41:39 -0200 Received: from casper.infradead.org [85.118.1.10] by pedra with IMAP (fetchmail-6.3.17) for (single-drop); Tue, 01 Feb 2011 20:41:39 -0200 (BRST) Received: from vger.kernel.org ([209.132.180.67]) by casper.infradead.org with esmtp (Exim 4.72 #1 (Red Hat Linux)) id 1PkOug-0006uE-TE; Tue, 01 Feb 2011 22:41:31 +0000 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751470Ab1BAWl3 (ORCPT + 1 other); Tue, 1 Feb 2011 17:41:29 -0500 Received: from mail-fx0-f46.google.com ([209.85.161.46]:38207 "EHLO mail-fx0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751221Ab1BAWl3 (ORCPT ); Tue, 1 Feb 2011 17:41:29 -0500 Received: by mail-fx0-f46.google.com with SMTP id 20so7348272fxm.19 for ; Tue, 01 Feb 2011 14:41:28 -0800 (PST) Received: by 10.223.87.1 with SMTP id u1mr525452fal.112.1296600072351; Tue, 01 Feb 2011 14:41:12 -0800 (PST) Received: from useri.localnet ([93.125.74.3]) by mx.google.com with ESMTPS id n26sm8107673fam.13.2011.02.01.14.41.11 (version=SSLv3 cipher=RC4-MD5); Tue, 01 Feb 2011 14:41:11 -0800 (PST) Subject: [PATCH 4/9 v2] ds3000: loading firmware during demod init To: mchehab@infradead.org, linux-media@vger.kernel.org From: "Igor M. Liplianin" Date: Wed, 2 Feb 2011 00:40:36 +0200 MIME-Version: 1.0 Message-Id: <201102020040.36746.liplianin@me.by> Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Sender: Speed up tuning, as firmware is not necessary to load every attempt to tune Signed-off-by: Igor M. Liplianin --- drivers/media/dvb/frontends/ds3000.c | 14 ++++++-------- 1 files changed, 6 insertions(+), 8 deletions(-) diff --git a/drivers/media/dvb/frontends/ds3000.c b/drivers/media/dvb/frontends/ds3000.c index 02ba759..3373890 100644 --- a/drivers/media/dvb/frontends/ds3000.c +++ b/drivers/media/dvb/frontends/ds3000.c @@ -1056,14 +1056,6 @@ static int ds3000_tune(struct dvb_frontend *fe, dprintk("%s() ", __func__); - /* Load the firmware if required */ - ret = ds3000_firmware_ondemand(fe); - if (ret != 0) { - printk(KERN_ERR "%s: Unable initialise the firmware\n", - __func__); - return ret; - } - state->dnxt.delivery = c->modulation; state->dnxt.frequency = c->frequency; state->dnxt.rolloff = 2; /* fixme */ @@ -1353,6 +1345,12 @@ static int ds3000_initfe(struct dvb_frontend *fe) ds3000_tuner_writereg(state, 0x42, 0x73); ds3000_tuner_writereg(state, 0x05, 0x01); ds3000_tuner_writereg(state, 0x62, 0xf5); + /* Load the firmware if required */ + ret = ds3000_firmware_ondemand(fe); + if (ret != 0) { + printk(KERN_ERR "%s: Unable initialize firmware\n", __func__); + return ret; + } return 0; }