diff options
author | Igor M. Liplianin <liplianin@me.by> | 2008-09-09 12:57:47 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-10-12 07:37:04 -0400 |
commit | cc8c4f3a9c8dacff198438debd159ae4753744fc (patch) | |
tree | 7de1182075ed926596e35140007c77a8f71b31b9 /drivers/media | |
parent | 3f8e51add2b7d37f16343e6bdcc63862d87ccd04 (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.c | 2 | ||||
-rw-r--r-- | drivers/media/dvb/frontends/cx24116.c | 5 | ||||
-rw-r--r-- | drivers/media/dvb/frontends/cx24116.h | 3 |
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 | ||
285 | static struct cx24116_config dw2104_config = { | 285 | static 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 | ||
290 | static int dw2104_frontend_attach(struct dvb_usb_adapter *d) | 290 | static 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) |