diff options
author | Mauro Carvalho Chehab <mchehab@s-opensource.com> | 2017-11-01 17:06:02 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@s-opensource.com> | 2017-12-11 13:04:53 -0500 |
commit | 15e3145a709978db777bd60d07552da06ae0e407 (patch) | |
tree | 9fc7d46c776b08402084037d83d2245e59c5452d /drivers/media/dvb-frontends/mb86a16.c | |
parent | 452c6446948e32018014ddadf93c525bf1f907ac (diff) | |
download | linux-stable-15e3145a709978db777bd60d07552da06ae0e407.tar.gz linux-stable-15e3145a709978db777bd60d07552da06ae0e407.tar.bz2 linux-stable-15e3145a709978db777bd60d07552da06ae0e407.zip |
media: mb86a16: be more resilient if I2C fails on sync
If the I2C read fails while check for sync, there's no point
on doing adjusting the tuner due to a random value that might
be at VIRM var. So, set VIRM to zero, as that makes the caller
for check_sync() to return an error.
Fix those smatch warnings:
drivers/media/dvb-frontends/mb86a16.c:1460 mb86a16_set_fe() error: uninitialized symbol 'VIRM'.
drivers/media/dvb-frontends/mb86a16.c:1461 mb86a16_set_fe() error: uninitialized symbol 'VIRM'.
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Diffstat (limited to 'drivers/media/dvb-frontends/mb86a16.c')
-rw-r--r-- | drivers/media/dvb-frontends/mb86a16.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/media/dvb-frontends/mb86a16.c b/drivers/media/dvb-frontends/mb86a16.c index dfe322eccaa1..f1aad52094c3 100644 --- a/drivers/media/dvb-frontends/mb86a16.c +++ b/drivers/media/dvb-frontends/mb86a16.c @@ -635,6 +635,7 @@ static int sync_chk(struct mb86a16_state *state, return sync; err: dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error"); + *VIRM = 0; return -EREMOTEIO; } |