From b9ccf679ce57309bf89a63003d4e45e20400ffe3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Cardona?= Date: Fri, 28 Sep 2012 08:59:31 -0300 Subject: [PATCH] --- yaml --- r: 333845 b: refs/heads/master c: 034351ff6372c1a880ed4c5d333e430e9c83d467 h: refs/heads/master i: 333843: bac2e447ba2dcdd5f0647dc4668c73e1eb6332c5 v: v3 --- [refs] | 2 +- trunk/drivers/media/dvb-frontends/ds3000.c | 12 +++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 3d0ba136661b..a1ad51625486 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c2c1b4156a447f113ef4d167decce29399c2667c +refs/heads/master: 034351ff6372c1a880ed4c5d333e430e9c83d467 diff --git a/trunk/drivers/media/dvb-frontends/ds3000.c b/trunk/drivers/media/dvb-frontends/ds3000.c index 4c8ac2657c4a..5b639087ce45 100644 --- a/trunk/drivers/media/dvb-frontends/ds3000.c +++ b/trunk/drivers/media/dvb-frontends/ds3000.c @@ -30,6 +30,7 @@ #include "ds3000.h" static int debug; +static int force_fw_upload; #define dprintk(args...) \ do { \ @@ -392,11 +393,13 @@ static int ds3000_firmware_ondemand(struct dvb_frontend *fe) dprintk("%s()\n", __func__); - if (ds3000_readreg(state, 0xb2) <= 0) + ret = ds3000_readreg(state, 0xb2); + if (ret < 0) return ret; - if (state->skip_fw_load) - return 0; + if (state->skip_fw_load || !force_fw_upload) + return 0; /* Firmware already uploaded, skipping */ + /* Load firmware */ /* request the firmware, this will block until someone uploads it */ printk(KERN_INFO "%s: Waiting for firmware upload (%s)...\n", __func__, @@ -1306,6 +1309,9 @@ static struct dvb_frontend_ops ds3000_ops = { module_param(debug, int, 0644); MODULE_PARM_DESC(debug, "Activates frontend debugging (default:0)"); +module_param(force_fw_upload, int, 0644); +MODULE_PARM_DESC(force_fw_upload, "Force firmware upload (default:0)"); + MODULE_DESCRIPTION("DVB Frontend module for Montage Technology " "DS3000/TS2020 hardware"); MODULE_AUTHOR("Konstantin Dimitrov");