diff options
author | Manu Abraham <manu@linuxtv.org> | 2007-10-05 16:04:32 +0400 |
---|---|---|
committer | Manu Abraham <manu@linuxtv.org> | 2007-10-05 16:04:32 +0400 |
commit | 2eb656e25d91845553a215568bd53a36d4ad6064 (patch) | |
tree | 3cfdb665d91792c582bbb641c9fff81c2768b422 /linux/drivers | |
parent | 163167f0d988fb0795bffa259909c13892b0cb1a (diff) | |
download | mediapointer-dvb-s2-2eb656e25d91845553a215568bd53a36d4ad6064.tar.gz mediapointer-dvb-s2-2eb656e25d91845553a215568bd53a36d4ad6064.tar.bz2 |
Bug: Set Auxilliary Clock Register correctly
From: Manu Abraham <abraham.manu@gmail.com>
Signed-off-by: Manu Abraham <manu@linuxtv.org>
Diffstat (limited to 'linux/drivers')
-rw-r--r-- | linux/drivers/media/dvb/frontends/stb0899_drv.c | 6 | ||||
-rw-r--r-- | linux/drivers/media/dvb/frontends/stb0899_reg.h | 9 |
2 files changed, 13 insertions, 2 deletions
diff --git a/linux/drivers/media/dvb/frontends/stb0899_drv.c b/linux/drivers/media/dvb/frontends/stb0899_drv.c index c39131741..7f575b5fc 100644 --- a/linux/drivers/media/dvb/frontends/stb0899_drv.c +++ b/linux/drivers/media/dvb/frontends/stb0899_drv.c @@ -1221,7 +1221,7 @@ static int stb0899_set_tone(struct dvb_frontend *fe, fe_sec_tone_mode_t tone) struct stb0899_state *state = fe->demodulator_priv; struct stb0899_internal *internal = &state->internal; - u8 div; + u8 div, reg; /* wait for diseqc idle */ if (stb0899_wait_diseqc_txidle(state, 100) < 0) @@ -1232,7 +1232,9 @@ static int stb0899_set_tone(struct dvb_frontend *fe, fe_sec_tone_mode_t tone) div = (internal->master_clk / 100) / 5632; div = (div + 5) / 10; stb0899_write_reg(state, STB0899_DISEQCOCFG, 0x66); - stb0899_write_reg(state, STB0899_ACRPRESC, 0x31); + reg = stb0899_read_reg(state, STB0899_ACRPRESC); + STB0899_SETFIELD_VAL(ACRPRESC, reg, 0x03); + stb0899_write_reg(state, STB0899_ACRPRESC, reg); stb0899_write_reg(state, STB0899_ACRDIV1, div); break; case SEC_TONE_OFF: diff --git a/linux/drivers/media/dvb/frontends/stb0899_reg.h b/linux/drivers/media/dvb/frontends/stb0899_reg.h index cc65e08f9..d2e9217c7 100644 --- a/linux/drivers/media/dvb/frontends/stb0899_reg.h +++ b/linux/drivers/media/dvb/frontends/stb0899_reg.h @@ -1805,6 +1805,15 @@ /* General Purpose */ #define STB0899_SYSREG 0xf101 #define STB0899_ACRPRESC 0xf110 +#define STB0899_OFFST_RSVD2 7 +#define STB0899_WIDTH_RSVD2 1 +#define STB0899_OFFST_ACRPRESC 4 +#define STB0899_WIDTH_ACRPRESC 3 +#define STB0899_OFFST_RSVD1 3 +#define STB0899_WIDTH_RSVD1 1 +#define STB0899_OFFST_ACRPRESC2 0 +#define STB0899_WIDTH_ACRPRESC2 3 + #define STB0899_ACRDIV1 0xf111 #define STB0899_ACRDIV2 0xf112 #define STB0899_DACR1 0xf113 |