summaryrefslogtreecommitdiffstats
path: root/drivers/media/i2c/max2175.c
diff options
context:
space:
mode:
authorGustavo A. R. Silva <gustavo@embeddedor.com>2018-02-06 17:47:37 +0100
committerMauro Carvalho Chehab <mchehab@s-opensource.com>2018-02-26 14:08:15 +0100
commita2603d1748fddaa44b70b027737ba077145f261c (patch)
treed2f6ca113bb90c39b2db24fb06c801d4799231c4 /drivers/media/i2c/max2175.c
parentmedia: dvb-frontends: ves1820: use 64-bit arithmetic instead of 32-bit (diff)
downloadlinux-a2603d1748fddaa44b70b027737ba077145f261c.tar.xz
linux-a2603d1748fddaa44b70b027737ba077145f261c.zip
media: i2c: max2175: use 64-bit arithmetic instead of 32-bit
Add suffix LL to constant 2 in order to give the compiler complete information about the proper arithmetic to use. Notice that this constant is used in a context that expects an expression of type s64 (64 bits, signed). The expression 2 * (clock_rate - abs_nco_freq) is currently being evaluated using 32-bit arithmetic. Addresses-Coverity-ID: 1446589 ("Unintentional integer overflow") Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Diffstat (limited to 'drivers/media/i2c/max2175.c')
-rw-r--r--drivers/media/i2c/max2175.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/media/i2c/max2175.c b/drivers/media/i2c/max2175.c
index 2f1966bdc473..87cba15b2977 100644
--- a/drivers/media/i2c/max2175.c
+++ b/drivers/media/i2c/max2175.c
@@ -643,7 +643,7 @@ static int max2175_set_nco_freq(struct max2175 *ctx, s32 nco_freq)
if (abs_nco_freq < clock_rate / 2) {
nco_val_desired = 2 * nco_freq;
} else {
- nco_val_desired = 2 * (clock_rate - abs_nco_freq);
+ nco_val_desired = 2LL * (clock_rate - abs_nco_freq);
if (nco_freq < 0)
nco_val_desired = -nco_val_desired;
}