V4L/DVB (8529): mxl5007t: enable _init and _sleep power management functionality
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
2a83e4d5e4
commit
452a53a247
@ -830,27 +830,53 @@ fail:
|
||||
static int mxl5007t_init(struct dvb_frontend *fe)
|
||||
{
|
||||
struct mxl5007t_state *state = fe->tuner_priv;
|
||||
//int ret;
|
||||
int ret;
|
||||
u8 d;
|
||||
|
||||
mutex_lock(&state->lock);
|
||||
/* do init */
|
||||
//fail:
|
||||
|
||||
if (fe->ops.i2c_gate_ctrl)
|
||||
fe->ops.i2c_gate_ctrl(fe, 1);
|
||||
|
||||
ret = mxl5007t_read_reg(state, 0x05, &d);
|
||||
if (mxl_fail(ret))
|
||||
goto fail;
|
||||
|
||||
ret = mxl5007t_write_reg(state, 0x05, d | 0x01);
|
||||
mxl_fail(ret);
|
||||
fail:
|
||||
if (fe->ops.i2c_gate_ctrl)
|
||||
fe->ops.i2c_gate_ctrl(fe, 0);
|
||||
|
||||
mutex_unlock(&state->lock);
|
||||
|
||||
return 0;//ret;
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int mxl5007t_sleep(struct dvb_frontend *fe)
|
||||
{
|
||||
struct mxl5007t_state *state = fe->tuner_priv;
|
||||
//int ret;
|
||||
int ret;
|
||||
u8 d;
|
||||
|
||||
mutex_lock(&state->lock);
|
||||
/* do standby */
|
||||
//fail:
|
||||
|
||||
if (fe->ops.i2c_gate_ctrl)
|
||||
fe->ops.i2c_gate_ctrl(fe, 1);
|
||||
|
||||
ret = mxl5007t_read_reg(state, 0x05, &d);
|
||||
if (mxl_fail(ret))
|
||||
goto fail;
|
||||
|
||||
ret = mxl5007t_write_reg(state, 0x05, d & ~0x01);
|
||||
mxl_fail(ret);
|
||||
fail:
|
||||
if (fe->ops.i2c_gate_ctrl)
|
||||
fe->ops.i2c_gate_ctrl(fe, 0);
|
||||
|
||||
mutex_unlock(&state->lock);
|
||||
|
||||
return 0;//ret;
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
|
Loading…
Reference in New Issue
Block a user