aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohannes Stezenbach <js@linuxtv.org>2005-05-17 00:54:35 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-05-17 10:59:31 -0400
commit1dfb800f9d0391dee86d692142745415f5f65f81 (patch)
treebd4b4adf5a0ee27122b93803323d53981a0b83ba
parentdd102c752c17636b2aec7977b377c41156ed19c1 (diff)
[PATCH] dvb: tda1004x: allow N_I2C to be overridden by the card driver
allow N_I2C to be overridden by the card driver (Andreas Oberritter) Signed-off-by: Johannes Stezenbach <js@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--drivers/media/dvb/frontends/tda1004x.c4
-rw-r--r--drivers/media/dvb/frontends/tda1004x.h3
2 files changed, 5 insertions, 2 deletions
diff --git a/drivers/media/dvb/frontends/tda1004x.c b/drivers/media/dvb/frontends/tda1004x.c
index 6dd428b7c9e8..ecfa8c7a9784 100644
--- a/drivers/media/dvb/frontends/tda1004x.c
+++ b/drivers/media/dvb/frontends/tda1004x.c
@@ -406,7 +406,7 @@ static int tda10046_fwupload(struct dvb_frontend* fe)
406 406
407 /* set parameters */ 407 /* set parameters */
408 tda1004x_write_byteI(state, TDA10046H_CONFPLL2, 10); 408 tda1004x_write_byteI(state, TDA10046H_CONFPLL2, 10);
409 tda1004x_write_byteI(state, TDA10046H_CONFPLL3, 0); 409 tda1004x_write_byteI(state, TDA10046H_CONFPLL3, state->config->n_i2c);
410 tda1004x_write_byteI(state, TDA10046H_FREQ_OFFSET, 99); 410 tda1004x_write_byteI(state, TDA10046H_FREQ_OFFSET, 99);
411 tda1004x_write_byteI(state, TDA10046H_FREQ_PHY2_MSB, 0xd4); 411 tda1004x_write_byteI(state, TDA10046H_FREQ_PHY2_MSB, 0xd4);
412 tda1004x_write_byteI(state, TDA10046H_FREQ_PHY2_LSB, 0x2c); 412 tda1004x_write_byteI(state, TDA10046H_FREQ_PHY2_LSB, 0x2c);
@@ -547,7 +547,7 @@ static int tda10046_init(struct dvb_frontend* fe)
547 tda1004x_write_mask(state, TDA1004X_AUTO, 8, 0); // select HP stream 547 tda1004x_write_mask(state, TDA1004X_AUTO, 8, 0); // select HP stream
548 tda1004x_write_mask(state, TDA1004X_CONFC1, 0x80, 0); // disable pulse killer 548 tda1004x_write_mask(state, TDA1004X_CONFC1, 0x80, 0); // disable pulse killer
549 tda1004x_write_byteI(state, TDA10046H_CONFPLL2, 10); // PLL M = 10 549 tda1004x_write_byteI(state, TDA10046H_CONFPLL2, 10); // PLL M = 10
550 tda1004x_write_byteI(state, TDA10046H_CONFPLL3, 0); // PLL P = N = 0 550 tda1004x_write_byteI(state, TDA10046H_CONFPLL3, state->config->n_i2c); // PLL P = N = 0
551 tda1004x_write_byteI(state, TDA10046H_FREQ_OFFSET, 99); // FREQOFFS = 99 551 tda1004x_write_byteI(state, TDA10046H_FREQ_OFFSET, 99); // FREQOFFS = 99
552 tda1004x_write_byteI(state, TDA10046H_FREQ_PHY2_MSB, 0xd4); // } PHY2 = -11221 552 tda1004x_write_byteI(state, TDA10046H_FREQ_PHY2_MSB, 0xd4); // } PHY2 = -11221
553 tda1004x_write_byteI(state, TDA10046H_FREQ_PHY2_LSB, 0x2c); // } 553 tda1004x_write_byteI(state, TDA10046H_FREQ_PHY2_LSB, 0x2c); // }
diff --git a/drivers/media/dvb/frontends/tda1004x.h b/drivers/media/dvb/frontends/tda1004x.h
index 196a375a16e4..c8e1d54ff262 100644
--- a/drivers/media/dvb/frontends/tda1004x.h
+++ b/drivers/media/dvb/frontends/tda1004x.h
@@ -37,6 +37,9 @@ struct tda1004x_config
37 /* Does the OCLK signal need inverted? */ 37 /* Does the OCLK signal need inverted? */
38 u8 invert_oclk; 38 u8 invert_oclk;
39 39
40 /* value of N_I2C of the CONF_PLL3 register */
41 u8 n_i2c;
42
40 /* PLL maintenance */ 43 /* PLL maintenance */
41 int (*pll_init)(struct dvb_frontend* fe); 44 int (*pll_init)(struct dvb_frontend* fe);
42 int (*pll_set)(struct dvb_frontend* fe, struct dvb_frontend_parameters* params); 45 int (*pll_set)(struct dvb_frontend* fe, struct dvb_frontend_parameters* params);