Skip to content

Commit

Permalink
V4L/DVB (13217): tda18271: handle rf_cal_on_startup properly during a…
Browse files Browse the repository at this point in the history
…ttach

If rf_cal_on_startup is enabled in the structure passed into
tda18271_attach, and the cal module option isn't disabled, then we
should run the initialization and calibration procedures during the
tda18271_attach function call, regardless of how many instances of the
driver have been attached.  If the device is already calibrated, the
driver will detect that and will only calibrate again if necessary.

Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
  • Loading branch information
Michael Krufky authored and Mauro Carvalho Chehab committed Dec 5, 2009
1 parent c54e1dd commit 188ea05
Showing 1 changed file with 14 additions and 3 deletions.
17 changes: 14 additions & 3 deletions drivers/media/common/tuners/tda18271-fe.c
Original file line number Diff line number Diff line change
Expand Up @@ -1249,7 +1249,7 @@ struct dvb_frontend *tda18271_attach(struct dvb_frontend *fe, u8 addr,
struct tda18271_config *cfg)
{
struct tda18271_priv *priv = NULL;
int instance;
int instance, rf_cal_on_startup = 0;

mutex_lock(&tda18271_list_mutex);

Expand All @@ -1262,8 +1262,6 @@ struct dvb_frontend *tda18271_attach(struct dvb_frontend *fe, u8 addr,
case 1:
{
/* new tuner instance */
int rf_cal_on_startup;

fe->tuner_priv = priv;

tda18271_setup_configuration(fe, cfg);
Expand Down Expand Up @@ -1315,7 +1313,20 @@ struct dvb_frontend *tda18271_attach(struct dvb_frontend *fe, u8 addr,
priv->output_opt = cfg->output_opt;
if (cfg->std_map)
tda18271_update_std_map(fe, cfg->std_map);

/* tda18271_cal_on_startup == -1 when cal
* module option is unset */
if (tda18271_cal_on_startup == -1) {
/* honor attach-time configuration */
rf_cal_on_startup =
(cfg->rf_cal_on_startup) ? 1 : 0;
} else {
/* module option overrides attach config */
rf_cal_on_startup = tda18271_cal_on_startup;
}
}
if (rf_cal_on_startup)
tda18271_init(fe);
break;
}

Expand Down

0 comments on commit 188ea05

Please sign in to comment.