Skip to content

Commit

Permalink
[media] fc0011: Fix xin value clamping
Browse files Browse the repository at this point in the history
Fix the xin value clamping and use clamp_t().

Signed-off-by: Michael Buesch <m@bues.ch>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
  • Loading branch information
Michael Büsch authored and Mauro Carvalho Chehab committed Feb 8, 2013
1 parent db5c05b commit 03a497d
Showing 1 changed file with 2 additions and 7 deletions.
9 changes: 2 additions & 7 deletions drivers/media/tuners/fc0011.c
Original file line number Diff line number Diff line change
Expand Up @@ -183,8 +183,7 @@ static int fc0011_set_params(struct dvb_frontend *fe)
unsigned int i, vco_retries;
u32 freq = p->frequency / 1000;
u32 bandwidth = p->bandwidth_hz / 1000;
u32 fvco, xin, xdiv, xdivr;
u16 frac;
u32 fvco, xin, frac, xdiv, xdivr;
u8 fa, fp, vco_sel, vco_cal;
u8 regs[FC11_NR_REGS] = { };

Expand Down Expand Up @@ -227,12 +226,8 @@ static int fc0011_set_params(struct dvb_frontend *fe)
frac += 32786;
if (!frac)
xin = 0;
else if (frac < 511)
xin = 512;
else if (frac < 65026)
xin = frac;
else
xin = 65024;
xin = clamp_t(u32, frac, 512, 65024);
regs[FC11_REG_XINHI] = xin >> 8;
regs[FC11_REG_XINLO] = xin;

Expand Down

0 comments on commit 03a497d

Please sign in to comment.