Browse Source

V4L/DVB (7029): tda18271: provide a choice whether to perform rf cal on init or on first tune

If module option "cal" is set to 1, the ~22 sec rf tracking filter calibration
sequence will be invoked on startup.  Otherwise, the calibration will take
place during the first tune.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Michael Krufky 17 years ago
parent
commit
0f96251e7b
1 changed files with 8 additions and 0 deletions
  1. 8 0
      drivers/media/dvb/frontends/tda18271-fe.c

+ 8 - 0
drivers/media/dvb/frontends/tda18271-fe.c

@@ -27,6 +27,10 @@ module_param_named(debug, tda18271_debug, int, 0644);
 MODULE_PARM_DESC(debug, "set debug level "
 		 "(info=1, map=2, reg=4, adv=8, cal=16 (or-able))");
 
+int tda18271_cal_on_startup;
+module_param_named(cal, tda18271_cal_on_startup, int, 0644);
+MODULE_PARM_DESC(cal, "perform RF tracking filter calibration on startup");
+
 static LIST_HEAD(tda18271_list);
 static DEFINE_MUTEX(tda18271_list_mutex);
 
@@ -1177,6 +1181,10 @@ struct dvb_frontend *tda18271_attach(struct dvb_frontend *fe, u8 addr,
 
 		mutex_lock(&priv->lock);
 		tda18271_init_regs(fe);
+
+		if ((tda18271_cal_on_startup) && (priv->id == TDA18271HDC2))
+			tda18271_rf_cal_init(fe);
+
 		mutex_unlock(&priv->lock);
 	}