V4L/DVB (7380): tuner-simple: warn if tuner can't be probed during attach
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
cac2b0eb18
commit
e827931e37
1 changed files with 22 additions and 0 deletions
|
@ -987,6 +987,28 @@ struct dvb_frontend *simple_tuner_attach(struct dvb_frontend *fe,
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* If i2c_adap is set, check that the tuner is at the correct address.
|
||||||
|
* Otherwise, if i2c_adap is NULL, the tuner will be programmed directly
|
||||||
|
* by the digital demod via calc_regs.
|
||||||
|
*/
|
||||||
|
if (i2c_adap != NULL) {
|
||||||
|
u8 b[1];
|
||||||
|
struct i2c_msg msg = {
|
||||||
|
.addr = i2c_addr, .flags = I2C_M_RD,
|
||||||
|
.buf = b, .len = 1,
|
||||||
|
};
|
||||||
|
|
||||||
|
if (fe->ops.i2c_gate_ctrl)
|
||||||
|
fe->ops.i2c_gate_ctrl(fe, 1);
|
||||||
|
|
||||||
|
if (1 != i2c_transfer(i2c_adap, &msg, 1))
|
||||||
|
tuner_warn("unable to probe %s, proceeding anyway.",
|
||||||
|
tuners[type].name);
|
||||||
|
|
||||||
|
if (fe->ops.i2c_gate_ctrl)
|
||||||
|
fe->ops.i2c_gate_ctrl(fe, 0);
|
||||||
|
}
|
||||||
|
|
||||||
mutex_lock(&tuner_simple_list_mutex);
|
mutex_lock(&tuner_simple_list_mutex);
|
||||||
|
|
||||||
instance = hybrid_tuner_request_state(struct tuner_simple_priv, priv,
|
instance = hybrid_tuner_request_state(struct tuner_simple_priv, priv,
|
||||||
|
|
Loading…
Add table
Reference in a new issue