diff options
author | Michael Krufky <mkrufky@kernellabs.com> | 2011-04-16 13:22:10 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-04-19 11:32:44 -0300 |
commit | 3f688e8c62fb69ff65bc9325831b5b3d3f5ef8ed (patch) | |
tree | aa5fc2696c410d3dc09bccb4c5a9ec7c2e3dc341 /drivers/media/common | |
parent | 381ad0ea146465406a0740f437e9971ceb6465a9 (diff) | |
download | talos-obmc-linux-3f688e8c62fb69ff65bc9325831b5b3d3f5ef8ed.tar.gz talos-obmc-linux-3f688e8c62fb69ff65bc9325831b5b3d3f5ef8ed.zip |
[media] tda18271: fix bad calculation of main post divider byte
R_MPD bit 3 does not depend on analog vs. digital. Just use
(0x7f & pd) directly from the values in the main pll table.
Thanks to Stefan Sibiga for pointing this out.
Cc: Stefan Sibiga <stefansibiga@yahoo.ca>
Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/common')
-rw-r--r-- | drivers/media/common/tuners/tda18271-common.c | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/drivers/media/common/tuners/tda18271-common.c b/drivers/media/common/tuners/tda18271-common.c index 5466d47db899..aae40e52af5b 100644 --- a/drivers/media/common/tuners/tda18271-common.c +++ b/drivers/media/common/tuners/tda18271-common.c @@ -533,16 +533,7 @@ int tda18271_calc_main_pll(struct dvb_frontend *fe, u32 freq) if (tda_fail(ret)) goto fail; - regs[R_MPD] = (0x77 & pd); - - switch (priv->mode) { - case TDA18271_ANALOG: - regs[R_MPD] &= ~0x08; - break; - case TDA18271_DIGITAL: - regs[R_MPD] |= 0x08; - break; - } + regs[R_MPD] = (0x7f & pd); div = ((d * (freq / 1000)) << 7) / 125; |