summaryrefslogtreecommitdiff
path: root/linux/drivers/media/dvb/frontends/stb6100.c
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2009-09-15 13:56:01 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-09-15 13:56:01 -0300
commit136a9b83fb4cb819c2f27cbb5948d26cec0e7934 (patch)
tree397919f977ae7937aa60a5001f62f0ba3faef2db /linux/drivers/media/dvb/frontends/stb6100.c
parentfdafaa4f7e2ea516dbd7791f362f05273aaaa6cc (diff)
parentc5d1ee111d9e00f9ce75e48e5e3806fdcd681a83 (diff)
downloadmediapointer-dvb-s2-136a9b83fb4cb819c2f27cbb5948d26cec0e7934.tar.gz
mediapointer-dvb-s2-136a9b83fb4cb819c2f27cbb5948d26cec0e7934.tar.bz2
merge: http://kernellabs.com/hg/~mkrufky/tda18271-merge
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'linux/drivers/media/dvb/frontends/stb6100.c')
-rw-r--r--linux/drivers/media/dvb/frontends/stb6100.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/linux/drivers/media/dvb/frontends/stb6100.c b/linux/drivers/media/dvb/frontends/stb6100.c
index 2b1af36b8..2de9e0c01 100644
--- a/linux/drivers/media/dvb/frontends/stb6100.c
+++ b/linux/drivers/media/dvb/frontends/stb6100.c
@@ -24,6 +24,7 @@
#include <linux/module.h>
#include <linux/string.h>
+#include "compat.h"
#include "dvb_frontend.h"
#include "stb6100.h"
@@ -374,7 +375,9 @@ static int stb6100_set_frequency(struct dvb_frontend *fe, u32 frequency)
/* N(I) = floor(f(VCO) / (f(XTAL) * (PSD2 ? 2 : 1))) */
nint = fvco / (state->reference << psd2);
/* N(F) = round(f(VCO) / f(XTAL) * (PSD2 ? 2 : 1) - N(I)) * 2 ^ 9 */
- nfrac = (((fvco - (nint * state->reference << psd2)) << (9 - psd2)) + state->reference / 2) / state->reference;
+ nfrac = DIV_ROUND_CLOSEST((fvco - (nint * state->reference << psd2))
+ << (9 - psd2),
+ state->reference);
dprintk(verbose, FE_DEBUG, 1,
"frequency = %u, srate = %u, g = %u, odiv = %u, psd2 = %u, fxtal = %u, osm = %u, fvco = %u, N(I) = %u, N(F) = %u",
frequency, srate, (unsigned int)g, (unsigned int)odiv,