author | nengwen.chen <nengwen.chen@amlogic.com> | 2018-04-19 12:55:43 (GMT) |
---|---|---|
committer | yang.xu <yang.xu@amlogic.com> | 2018-04-20 02:38:10 (GMT) |
commit | 46c611205cb9e97ff00b1e764f5aac435e3f50a4 (patch) | |
tree | 05533524d540d94e14b54298bb8916ed0228e01d | |
parent | df6650d1ac19ca1aa3595e18fd777fe024787024 (diff) | |
download | common-46c611205cb9e97ff00b1e764f5aac435e3f50a4.zip common-46c611205cb9e97ff00b1e764f5aac435e3f50a4.tar.gz common-46c611205cb9e97ff00b1e764f5aac435e3f50a4.tar.bz2 |
atv_demod: Modify atv entry and leave mode status.
PD#163853: Modify atv entry and leave mode status.
Change-Id: I508574f7c0328342e0dff7657f79de4e60443d9a
Signed-off-by: nengwen.chen <nengwen.chen@amlogic.com>
-rw-r--r-- | drivers/amlogic/atv_demod/atv_demod_ops.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/drivers/amlogic/atv_demod/atv_demod_ops.c b/drivers/amlogic/atv_demod/atv_demod_ops.c index 8bcf116..27571fd 100644 --- a/drivers/amlogic/atv_demod/atv_demod_ops.c +++ b/drivers/amlogic/atv_demod/atv_demod_ops.c @@ -375,6 +375,33 @@ static int atv_demod_set_config(struct dvb_frontend *fe, void *priv_cfg) mutex_lock(&atv_demod_list_mutex); + switch (*state) { + case AML_ATVDEMOD_INIT: + if (get_atvdemod_state() != ATVDEMOD_STATE_WORK) { + atv_demod_enter_mode(); + if (fe->ops.tuner_ops.init) + fe->ops.tuner_ops.init(fe); + } + break; + + case AML_ATVDEMOD_UNINIT: + if (get_atvdemod_state() != ATVDEMOD_STATE_IDEL) { + atv_demod_leave_mode(); + if (fe->ops.tuner_ops.release) + fe->ops.tuner_ops.release(fe); + } + break; + + case AML_ATVDEMOD_RESUME: + if (get_atvdemod_state() == ATVDEMOD_STATE_SLEEP) { + atv_demod_enter_mode(); + if (fe->ops.tuner_ops.resume) + fe->ops.tuner_ops.resume(fe); + } + break; + } + +#if 0 if (*state == AML_ATVDEMOD_INIT && atvdemod_state != *state) { atv_demod_enter_mode(); if (fe->ops.tuner_ops.init) @@ -389,6 +416,7 @@ static int atv_demod_set_config(struct dvb_frontend *fe, void *priv_cfg) if (fe->ops.tuner_ops.resume) fe->ops.tuner_ops.resume(fe); } +#endif mutex_unlock(&atv_demod_list_mutex); |