mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-23 02:09:31 +07:00
[media] tuner-core: do the right thing for suspend/resume
Power down tuners at suspend. At resume, if the tuner is in standby, calls set_mode, that will turn it on and set the latest frequencies. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
cbde689823
commit
e2f63d9ba5
@ -1121,9 +1121,13 @@ static int tuner_log_status(struct v4l2_subdev *sd)
|
|||||||
static int tuner_suspend(struct i2c_client *c, pm_message_t state)
|
static int tuner_suspend(struct i2c_client *c, pm_message_t state)
|
||||||
{
|
{
|
||||||
struct tuner *t = to_tuner(i2c_get_clientdata(c));
|
struct tuner *t = to_tuner(i2c_get_clientdata(c));
|
||||||
|
struct analog_demod_ops *analog_ops = &t->fe.ops.analog_ops;
|
||||||
|
|
||||||
tuner_dbg("suspend\n");
|
tuner_dbg("suspend\n");
|
||||||
/* FIXME: power down ??? */
|
|
||||||
|
if (!t->standby && analog_ops->standby)
|
||||||
|
analog_ops->standby(&t->fe);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1132,10 +1136,10 @@ static int tuner_resume(struct i2c_client *c)
|
|||||||
struct tuner *t = to_tuner(i2c_get_clientdata(c));
|
struct tuner *t = to_tuner(i2c_get_clientdata(c));
|
||||||
|
|
||||||
tuner_dbg("resume\n");
|
tuner_dbg("resume\n");
|
||||||
if (V4L2_TUNER_RADIO == t->mode)
|
|
||||||
set_freq(c, t->radio_freq);
|
if (!t->standby)
|
||||||
else
|
set_mode_freq(c, t, t->type, 0);
|
||||||
set_freq(c, t->tv_freq);
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user