diff options
-rw-r--r-- | drivers/media/dvb/frontends/au8522_decoder.c | 5 | ||||
-rw-r--r-- | drivers/media/dvb/frontends/au8522_dig.c | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/drivers/media/dvb/frontends/au8522_decoder.c b/drivers/media/dvb/frontends/au8522_decoder.c index ef5fd49363c2..68dba3a4b4da 100644 --- a/drivers/media/dvb/frontends/au8522_decoder.c +++ b/drivers/media/dvb/frontends/au8522_decoder.c | |||
@@ -666,6 +666,11 @@ static int au8522_reset(struct v4l2_subdev *sd, u32 val) | |||
666 | 666 | ||
667 | state->operational_mode = AU8522_ANALOG_MODE; | 667 | state->operational_mode = AU8522_ANALOG_MODE; |
668 | 668 | ||
669 | /* Clear out any state associated with the digital side of the | ||
670 | chip, so that when it gets powered back up it won't think | ||
671 | that it is already tuned */ | ||
672 | state->current_frequency = 0; | ||
673 | |||
669 | au8522_writereg(state, 0xa4, 1 << 5); | 674 | au8522_writereg(state, 0xa4, 1 << 5); |
670 | 675 | ||
671 | return 0; | 676 | return 0; |
diff --git a/drivers/media/dvb/frontends/au8522_dig.c b/drivers/media/dvb/frontends/au8522_dig.c index e2efb25d1a75..65f6a36dfb21 100644 --- a/drivers/media/dvb/frontends/au8522_dig.c +++ b/drivers/media/dvb/frontends/au8522_dig.c | |||
@@ -618,6 +618,11 @@ int au8522_init(struct dvb_frontend *fe) | |||
618 | 618 | ||
619 | state->operational_mode = AU8522_DIGITAL_MODE; | 619 | state->operational_mode = AU8522_DIGITAL_MODE; |
620 | 620 | ||
621 | /* Clear out any state associated with the digital side of the | ||
622 | chip, so that when it gets powered back up it won't think | ||
623 | that it is already tuned */ | ||
624 | state->current_frequency = 0; | ||
625 | |||
621 | au8522_writereg(state, 0xa4, 1 << 5); | 626 | au8522_writereg(state, 0xa4, 1 << 5); |
622 | 627 | ||
623 | au8522_i2c_gate_ctrl(fe, 1); | 628 | au8522_i2c_gate_ctrl(fe, 1); |