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:
Michael Krufky
2008-07-12 18:22:38 -03:00
committed by Mauro Carvalho Chehab
parent 2a83e4d5e4
commit 452a53a247

View File

@@ -830,27 +830,53 @@ fail:
static int mxl5007t_init(struct dvb_frontend *fe) static int mxl5007t_init(struct dvb_frontend *fe)
{ {
struct mxl5007t_state *state = fe->tuner_priv; struct mxl5007t_state *state = fe->tuner_priv;
//int ret; int ret;
u8 d;
mutex_lock(&state->lock); 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); mutex_unlock(&state->lock);
return 0;//ret; return ret;
} }
static int mxl5007t_sleep(struct dvb_frontend *fe) static int mxl5007t_sleep(struct dvb_frontend *fe)
{ {
struct mxl5007t_state *state = fe->tuner_priv; struct mxl5007t_state *state = fe->tuner_priv;
//int ret; int ret;
u8 d;
mutex_lock(&state->lock); 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); mutex_unlock(&state->lock);
return 0;//ret; return ret;
} }
/* ------------------------------------------------------------------------- */ /* ------------------------------------------------------------------------- */