aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media
diff options
context:
space:
mode:
authorIgor M. Liplianin <liplianin@me.by>2008-09-09 12:57:47 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2008-10-12 07:37:04 -0400
commitcc8c4f3a9c8dacff198438debd159ae4753744fc (patch)
tree7de1182075ed926596e35140007c77a8f71b31b9 /drivers/media
parent3f8e51add2b7d37f16343e6bdcc63862d87ccd04 (diff)
V4L/DVB (8994): Adjust MPEG initialization in cx24116
Adjust MPEG initialization in cx24116 in order to accomodate different MPEG CLK position and polarity in different cards. Signed-off-by: Igor M. Liplianin <liplianin@me.by> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/dvb/dvb-usb/dw2102.c2
-rw-r--r--drivers/media/dvb/frontends/cx24116.c5
-rw-r--r--drivers/media/dvb/frontends/cx24116.h3
3 files changed, 8 insertions, 2 deletions
diff --git a/drivers/media/dvb/dvb-usb/dw2102.c b/drivers/media/dvb/dvb-usb/dw2102.c
index 0f3f962b35bf..ad3d6fca9ab8 100644
--- a/drivers/media/dvb/dvb-usb/dw2102.c
+++ b/drivers/media/dvb/dvb-usb/dw2102.c
@@ -284,7 +284,7 @@ static int dw2102_set_voltage(struct dvb_frontend *fe, fe_sec_voltage_t voltage)
284 284
285static struct cx24116_config dw2104_config = { 285static struct cx24116_config dw2104_config = {
286 .demod_address = 0x55, 286 .demod_address = 0x55,
287 /*.mpg_clk_pos_pol = 0x01,*/ 287 .mpg_clk_pos_pol = 0x01,
288}; 288};
289 289
290static int dw2104_frontend_attach(struct dvb_usb_adapter *d) 290static int dw2104_frontend_attach(struct dvb_usb_adapter *d)
diff --git a/drivers/media/dvb/frontends/cx24116.c b/drivers/media/dvb/frontends/cx24116.c
index 2ff9e20c595f..666a0d89e83c 100644
--- a/drivers/media/dvb/frontends/cx24116.c
+++ b/drivers/media/dvb/frontends/cx24116.c
@@ -478,7 +478,10 @@ static int cx24116_load_firmware (struct dvb_frontend* fe, const struct firmware
478 cmd.args[0x01] = 0x01; 478 cmd.args[0x01] = 0x01;
479 cmd.args[0x02] = 0x75; 479 cmd.args[0x02] = 0x75;
480 cmd.args[0x03] = 0x00; 480 cmd.args[0x03] = 0x00;
481 cmd.args[0x04] = 0x02; 481 if (state->config->mpg_clk_pos_pol)
482 cmd.args[0x04] = state->config->mpg_clk_pos_pol;
483 else
484 cmd.args[0x04] = 0x02;
482 cmd.args[0x05] = 0x00; 485 cmd.args[0x05] = 0x00;
483 cmd.len= 0x06; 486 cmd.len= 0x06;
484 ret = cx24116_cmd_execute(fe, &cmd); 487 ret = cx24116_cmd_execute(fe, &cmd);
diff --git a/drivers/media/dvb/frontends/cx24116.h b/drivers/media/dvb/frontends/cx24116.h
index 27896725204a..8dbcec268394 100644
--- a/drivers/media/dvb/frontends/cx24116.h
+++ b/drivers/media/dvb/frontends/cx24116.h
@@ -33,6 +33,9 @@ struct cx24116_config
33 33
34 /* Need to reset device during firmware loading */ 34 /* Need to reset device during firmware loading */
35 int (*reset_device)(struct dvb_frontend* fe); 35 int (*reset_device)(struct dvb_frontend* fe);
36
37 /* Need to set MPEG parameters */
38 u8 mpg_clk_pos_pol:0x02;
36}; 39};
37 40
38#if defined(CONFIG_DVB_CX24116) || defined(CONFIG_DVB_CX24116_MODULE) 41#if defined(CONFIG_DVB_CX24116) || defined(CONFIG_DVB_CX24116_MODULE)