aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb/frontends/zl10353.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/dvb/frontends/zl10353.c')
-rw-r--r--drivers/media/dvb/frontends/zl10353.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/media/dvb/frontends/zl10353.c b/drivers/media/dvb/frontends/zl10353.c
index b150ed306696..148b6f7f6cb2 100644
--- a/drivers/media/dvb/frontends/zl10353.c
+++ b/drivers/media/dvb/frontends/zl10353.c
@@ -572,6 +572,10 @@ static int zl10353_init(struct dvb_frontend *fe)
572 zl10353_dump_regs(fe); 572 zl10353_dump_regs(fe);
573 if (state->config.parallel_ts) 573 if (state->config.parallel_ts)
574 zl10353_reset_attach[2] &= ~0x20; 574 zl10353_reset_attach[2] &= ~0x20;
575 if (state->config.clock_ctl_1)
576 zl10353_reset_attach[3] = state->config.clock_ctl_1;
577 if (state->config.pll_0)
578 zl10353_reset_attach[4] = state->config.pll_0;
575 579
576 /* Do a "hard" reset if not already done */ 580 /* Do a "hard" reset if not already done */
577 if (zl10353_read_register(state, 0x50) != zl10353_reset_attach[1] || 581 if (zl10353_read_register(state, 0x50) != zl10353_reset_attach[1] ||
@@ -614,6 +618,7 @@ struct dvb_frontend *zl10353_attach(const struct zl10353_config *config,
614 struct i2c_adapter *i2c) 618 struct i2c_adapter *i2c)
615{ 619{
616 struct zl10353_state *state = NULL; 620 struct zl10353_state *state = NULL;
621 int id;
617 622
618 /* allocate memory for the internal state */ 623 /* allocate memory for the internal state */
619 state = kzalloc(sizeof(struct zl10353_state), GFP_KERNEL); 624 state = kzalloc(sizeof(struct zl10353_state), GFP_KERNEL);
@@ -625,7 +630,8 @@ struct dvb_frontend *zl10353_attach(const struct zl10353_config *config,
625 memcpy(&state->config, config, sizeof(struct zl10353_config)); 630 memcpy(&state->config, config, sizeof(struct zl10353_config));
626 631
627 /* check if the demod is there */ 632 /* check if the demod is there */
628 if (zl10353_read_register(state, CHIP_ID) != ID_ZL10353) 633 id = zl10353_read_register(state, CHIP_ID);
634 if ((id != ID_ZL10353) && (id != ID_CE6230) && (id != ID_CE6231))
629 goto error; 635 goto error;
630 636
631 /* create dvb_frontend */ 637 /* create dvb_frontend */