summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorAntti Palosaari <crope@iki.fi>2015-04-16 13:36:51 +0300
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2015-05-18 21:55:14 +0300
commit47f95dbdb3adefb927851c8737de66894f58b14d (patch)
tree34ce1caa4f7c128da5f24a849008635ca7f17152 /drivers
parentdd219a87e4ba963c8208a3ef0a38fbc14074ad70 (diff)
downloadlinux-47f95dbdb3adefb927851c8737de66894f58b14d.tar.xz
[media] tua9001: use div_u64() for frequency calculation
Use div_u64() to simplify and remove home made divides. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/media/tuners/tua9001.c9
-rw-r--r--drivers/media/tuners/tua9001_priv.h1
2 files changed, 2 insertions, 8 deletions
diff --git a/drivers/media/tuners/tua9001.c b/drivers/media/tuners/tua9001.c
index 09a10349dd57..d4f6ca0c4d92 100644
--- a/drivers/media/tuners/tua9001.c
+++ b/drivers/media/tuners/tua9001.c
@@ -88,7 +88,6 @@ static int tua9001_set_params(struct dvb_frontend *fe)
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
int ret, i;
u16 val;
- u32 frequency;
struct tua9001_reg_val data[2];
dev_dbg(&client->dev,
@@ -122,14 +121,8 @@ static int tua9001_set_params(struct dvb_frontend *fe)
data[0].reg = 0x04;
data[0].val = val;
-
- frequency = (c->frequency - 150000000);
- frequency /= 100;
- frequency *= 48;
- frequency /= 10000;
-
data[1].reg = 0x1f;
- data[1].val = frequency;
+ data[1].val = div_u64((u64) (c->frequency - 150000000) * 48, 1000000);
if (fe->callback) {
ret = fe->callback(client->adapter,
diff --git a/drivers/media/tuners/tua9001_priv.h b/drivers/media/tuners/tua9001_priv.h
index 327ead9ea2ba..bc406c5ec69d 100644
--- a/drivers/media/tuners/tua9001_priv.h
+++ b/drivers/media/tuners/tua9001_priv.h
@@ -18,6 +18,7 @@
#define TUA9001_PRIV_H
#include "tua9001.h"
+#include <linux/math64.h>
#include <linux/regmap.h>
struct tua9001_reg_val {