diff mbox

[6/6,media] ds3000: add module parameter to force firmware upload

Message ID 1347614846-19046-7-git-send-email-remi.cardona@smartjog.com (mailing list archive)
State New, archived
Headers show

Commit Message

Rémi Cardona Sept. 14, 2012, 9:27 a.m. UTC
Signed-off-by: Rémi Cardona <remi.cardona@smartjog.com>
---
 drivers/media/dvb/frontends/ds3000.c |    9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

Comments

Antti Palosaari Sept. 16, 2012, 1:45 a.m. UTC | #1
On 09/14/2012 12:27 PM, Rémi Cardona wrote:
> Signed-off-by: Rémi Cardona <remi.cardona@smartjog.com>

Reviewed-by: Antti Palosaari <crope@iki.fi>

With same comments as earlier patch.

> ---
>   drivers/media/dvb/frontends/ds3000.c |    9 ++++++++-
>   1 file changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/media/dvb/frontends/ds3000.c b/drivers/media/dvb/frontends/ds3000.c
> index 970963c..3e0e9de 100644
> --- a/drivers/media/dvb/frontends/ds3000.c
> +++ b/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 { \
> @@ -396,10 +397,13 @@ static int ds3000_firmware_ondemand(struct dvb_frontend *fe)
>   	dprintk("%s()\n", __func__);
>
>   	ret = ds3000_readreg(state, 0xb2);
> -	if (ret == 0) {
> +	if (ret == 0 && force_fw_upload == 0) {
>   		printk(KERN_INFO "%s: Firmware already uploaded, skipping\n",
>   			__func__);
>   		return ret;
> +	} else if (ret == 0 && force_fw_upload) {
> +		printk(KERN_INFO "%s: Firmware already uploaded, "
> +			"forcing upload\n", __func__);
>   	} else if (ret < 0) {
>   		return ret;
>   	}
> @@ -1308,6 +1312,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");
>
diff mbox

Patch

diff --git a/drivers/media/dvb/frontends/ds3000.c b/drivers/media/dvb/frontends/ds3000.c
index 970963c..3e0e9de 100644
--- a/drivers/media/dvb/frontends/ds3000.c
+++ b/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 { \
@@ -396,10 +397,13 @@  static int ds3000_firmware_ondemand(struct dvb_frontend *fe)
 	dprintk("%s()\n", __func__);
 
 	ret = ds3000_readreg(state, 0xb2);
-	if (ret == 0) {
+	if (ret == 0 && force_fw_upload == 0) {
 		printk(KERN_INFO "%s: Firmware already uploaded, skipping\n",
 			__func__);
 		return ret;
+	} else if (ret == 0 && force_fw_upload) {
+		printk(KERN_INFO "%s: Firmware already uploaded, "
+			"forcing upload\n", __func__);
 	} else if (ret < 0) {
 		return ret;
 	}
@@ -1308,6 +1312,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");