[media] tda10071: use div_s64() when dividing a s64 integer
authorMauro Carvalho Chehab <mchehab@osg.samsung.com>
Tue, 11 Aug 2015 22:08:59 +0000 (19:08 -0300)
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>
Tue, 11 Aug 2015 22:19:30 +0000 (19:19 -0300)
Otherwise, it will break on 32 bits archs.

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
drivers/media/dvb-frontends/tda10071.c

index ee6653124618ab35ae0e29c97c7f2d40e998e6fd..119d47596ac81ace7dacf073c4024ca65b4fa38a 100644 (file)
@@ -527,7 +527,7 @@ static int tda10071_read_signal_strength(struct dvb_frontend *fe, u16 *strength)
        unsigned int uitmp;
 
        if (c->strength.stat[0].scale == FE_SCALE_DECIBEL) {
-               uitmp = c->strength.stat[0].svalue / 1000 + 256;
+               uitmp = div_s64(c->strength.stat[0].svalue, 1000) + 256;
                uitmp = clamp(uitmp, 181U, 236U); /* -75dBm - -20dBm */
                /* scale value to 0x0000-0xffff */
                *strength = (uitmp-181) * 0xffff / (236-181);