diff options
author | Antti Palosaari <crope@iki.fi> | 2012-12-08 22:30:08 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2013-01-06 06:05:59 -0500 |
commit | 71b1e82794bbae7b23409e013f7249dd2f382160 (patch) | |
tree | 17683b39ceb15888543cf13909eed22dc1a76191 /drivers/media/tuners/fc0012.c | |
parent | ad3a758bb30ab7c71b67930ae7dcc794d517dd6b (diff) |
[media] fc0012: add RF loop through
Signed-off-by: Antti Palosaari <crope@iki.fi>
Acked-by: Hans-Frieder Vogt <hfvogt@gmx.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/tuners/fc0012.c')
-rw-r--r-- | drivers/media/tuners/fc0012.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/media/tuners/fc0012.c b/drivers/media/tuners/fc0012.c index 5ede0c049bc0..636f951219db 100644 --- a/drivers/media/tuners/fc0012.c +++ b/drivers/media/tuners/fc0012.c | |||
@@ -101,6 +101,9 @@ static int fc0012_init(struct dvb_frontend *fe) | |||
101 | if (priv->dual_master) | 101 | if (priv->dual_master) |
102 | reg[0x0c] |= 0x02; | 102 | reg[0x0c] |= 0x02; |
103 | 103 | ||
104 | if (priv->cfg->loop_through) | ||
105 | reg[0x09] |= 0x01; | ||
106 | |||
104 | if (fe->ops.i2c_gate_ctrl) | 107 | if (fe->ops.i2c_gate_ctrl) |
105 | fe->ops.i2c_gate_ctrl(fe, 1); /* open I2C-gate */ | 108 | fe->ops.i2c_gate_ctrl(fe, 1); /* open I2C-gate */ |
106 | 109 | ||
@@ -445,6 +448,7 @@ struct dvb_frontend *fc0012_attach(struct dvb_frontend *fe, | |||
445 | return NULL; | 448 | return NULL; |
446 | 449 | ||
447 | priv->i2c = i2c; | 450 | priv->i2c = i2c; |
451 | priv->cfg = cfg; | ||
448 | priv->dual_master = cfg->dual_master; | 452 | priv->dual_master = cfg->dual_master; |
449 | priv->addr = cfg->i2c_address; | 453 | priv->addr = cfg->i2c_address; |
450 | priv->xtal_freq = cfg->xtal_freq; | 454 | priv->xtal_freq = cfg->xtal_freq; |
@@ -453,6 +457,9 @@ struct dvb_frontend *fc0012_attach(struct dvb_frontend *fe, | |||
453 | 457 | ||
454 | fe->tuner_priv = priv; | 458 | fe->tuner_priv = priv; |
455 | 459 | ||
460 | if (priv->cfg->loop_through) | ||
461 | fc0012_writereg(priv, 0x09, 0x6f); | ||
462 | |||
456 | memcpy(&fe->ops.tuner_ops, &fc0012_tuner_ops, | 463 | memcpy(&fe->ops.tuner_ops, &fc0012_tuner_ops, |
457 | sizeof(struct dvb_tuner_ops)); | 464 | sizeof(struct dvb_tuner_ops)); |
458 | 465 | ||