diff options
Diffstat (limited to 'drivers/media/dvb/frontends/zl10353.c')
-rw-r--r-- | drivers/media/dvb/frontends/zl10353.c | 8 |
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 */ |