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

Message ID 1348837172-11784-7-git-send-email-remi.cardona@smartjog.com (mailing list archive)
State Accepted, archived
Headers

Commit Message

Rémi Cardona Sept. 28, 2012, 12:59 p.m. UTC
Signed-off-by: Rémi Cardona <remi.cardona@smartjog.com>
---
 drivers/media/dvb-frontends/ds3000.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
  

Comments

Antti Palosaari Oct. 3, 2012, 12:38 a.m. UTC | #1
On 09/28/2012 03:59 PM, Rémi Cardona wrote:
> Signed-off-by: Rémi Cardona <remi.cardona@smartjog.com>

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


> ---
>   drivers/media/dvb-frontends/ds3000.c |    6 +++++-
>   1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/media/dvb-frontends/ds3000.c b/drivers/media/dvb-frontends/ds3000.c
> index 59184a8..c66d731 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,7 +397,7 @@ 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) {
>   		/* Firmware already uploaded, skipping */
>   		return ret;
>   	} else if (ret < 0) {
> @@ -1307,6 +1308,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");
>
  

Patch

diff --git a/drivers/media/dvb-frontends/ds3000.c b/drivers/media/dvb-frontends/ds3000.c
index 59184a8..c66d731 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,7 +397,7 @@  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) {
 		/* Firmware already uploaded, skipping */
 		return ret;
 	} else if (ret < 0) {
@@ -1307,6 +1308,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");