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 <mche...@s-opensource.com>
---
 drivers/media/dvb-frontends/mb86a16.c | 1 +
 1 file changed, 1 insertion(+)

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;
 
 }
-- 
2.13.6

Reply via email to