summaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb-frontends/af9033.c
diff options
context:
space:
mode:
authorAntti Palosaari <crope@iki.fi>2014-11-03 21:23:26 -0300
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2014-11-04 18:20:06 -0200
commit1620d221842cb2445680be2afbb36272350b4cac (patch)
treee218a261308a9586d5e5c7fe00221d30fac2890a /drivers/media/dvb-frontends/af9033.c
parent0b0d96281f6d59280094b240ca5046b317ade614 (diff)
downloadop-kernel-dev-1620d221842cb2445680be2afbb36272350b4cac.zip
op-kernel-dev-1620d221842cb2445680be2afbb36272350b4cac.tar.gz
[media] af9033: improve read_signal_strength error handling slightly
Check return status after each register access routine and avoid masking return status values. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'drivers/media/dvb-frontends/af9033.c')
-rw-r--r--drivers/media/dvb-frontends/af9033.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/media/dvb-frontends/af9033.c b/drivers/media/dvb-frontends/af9033.c
index e3bae77..3f688de 100644
--- a/drivers/media/dvb-frontends/af9033.c
+++ b/drivers/media/dvb-frontends/af9033.c
@@ -876,7 +876,12 @@ static int af9033_read_signal_strength(struct dvb_frontend *fe, u16 *strength)
*strength = u8tmp * 0xffff / 100;
} else {
ret = af9033_rd_reg(dev, 0x8000f7, &u8tmp);
- ret |= af9033_rd_regs(dev, 0x80f900, buf, 7);
+ if (ret < 0)
+ goto err;
+
+ ret = af9033_rd_regs(dev, 0x80f900, buf, 7);
+ if (ret < 0)
+ goto err;
if (c->frequency <= 300000000)
gain_offset = 7; /* VHF */
@@ -901,9 +906,6 @@ static int af9033_read_signal_strength(struct dvb_frontend *fe, u16 *strength)
*strength = tmp * 0xffff / 100;
}
- if (ret)
- goto err;
-
return 0;
err:
OpenPOWER on IntegriCloud