summaryrefslogtreecommitdiff
path: root/drivers/media/tuners/qm1d1c0042.c
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@osg.samsung.com>2014-09-23 22:29:41 -0300
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2014-09-26 06:47:42 -0300
commit46cebe017afd03614b17c70ed5ed2734ec3796f7 (patch)
tree29967d2aaf086d8fc4be9112ac9faa3450cd782f /drivers/media/tuners/qm1d1c0042.c
parent5b5560842a7ee002d208a20866f88fafd63198eb (diff)
[media] qm1d1c0042: fix compilation on 32 bits
drivers/built-in.o: In function `qm1d1c0042_set_params': >> qm1d1c0042.c:(.text+0x2519730): undefined reference to `__divdi3' Reported-by: kbuild test robot <fengguang.wu@intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'drivers/media/tuners/qm1d1c0042.c')
-rw-r--r--drivers/media/tuners/qm1d1c0042.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/media/tuners/qm1d1c0042.c b/drivers/media/tuners/qm1d1c0042.c
index 585594b9c4f8..18bc745ed108 100644
--- a/drivers/media/tuners/qm1d1c0042.c
+++ b/drivers/media/tuners/qm1d1c0042.c
@@ -28,6 +28,7 @@
*/
#include <linux/kernel.h>
+#include <linux/math64.h>
#include "qm1d1c0042.h"
#define QM1D1C0042_NUM_REGS 0x20
@@ -234,7 +235,9 @@ static int qm1d1c0042_set_params(struct dvb_frontend *fe)
* sd = b (b >= 0)
* 1<<22 + b (b < 0)
*/
- b = (((s64) freq) << 20) / state->cfg.xtal_freq - (((s64) a) << 20);
+ b = (s32)div64_s64(((s64) freq) << 20, state->cfg.xtal_freq)
+ - (((s64) a) << 20);
+
if (b >= 0)
sd = b;
else