aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb-frontends/af9033.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/dvb-frontends/af9033.c')
-rw-r--r--drivers/media/dvb-frontends/af9033.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/media/dvb-frontends/af9033.c b/drivers/media/dvb-frontends/af9033.c
index 464ad878490b..c9cad989b8b9 100644
--- a/drivers/media/dvb-frontends/af9033.c
+++ b/drivers/media/dvb-frontends/af9033.c
@@ -318,6 +318,10 @@ static int af9033_init(struct dvb_frontend *fe)
318 len = ARRAY_SIZE(tuner_init_fc2580); 318 len = ARRAY_SIZE(tuner_init_fc2580);
319 init = tuner_init_fc2580; 319 init = tuner_init_fc2580;
320 break; 320 break;
321 case AF9033_TUNER_FC0012:
322 len = ARRAY_SIZE(tuner_init_fc0012);
323 init = tuner_init_fc0012;
324 break;
321 default: 325 default:
322 dev_dbg(&state->i2c->dev, "%s: unsupported tuner ID=%d\n", 326 dev_dbg(&state->i2c->dev, "%s: unsupported tuner ID=%d\n",
323 __func__, state->cfg.tuner); 327 __func__, state->cfg.tuner);
@@ -331,6 +335,20 @@ static int af9033_init(struct dvb_frontend *fe)
331 goto err; 335 goto err;
332 } 336 }
333 337
338 if (state->cfg.ts_mode == AF9033_TS_MODE_SERIAL) {
339 ret = af9033_wr_reg_mask(state, 0x00d91c, 0x01, 0x01);
340 if (ret < 0)
341 goto err;
342
343 ret = af9033_wr_reg_mask(state, 0x00d917, 0x00, 0x01);
344 if (ret < 0)
345 goto err;
346
347 ret = af9033_wr_reg_mask(state, 0x00d916, 0x00, 0x01);
348 if (ret < 0)
349 goto err;
350 }
351
334 state->bandwidth_hz = 0; /* force to program all parameters */ 352 state->bandwidth_hz = 0; /* force to program all parameters */
335 353
336 return 0; 354 return 0;