diff options
author | Antti Palosaari <crope@iki.fi> | 2011-04-12 09:22:47 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-05-20 08:27:07 -0400 |
commit | 59fb41409d21c491671f74c676373118f48e2136 (patch) | |
tree | b6fac5d64cd4c6bdd802d0219188e2dec228595f /drivers/media/dvb/dvb-usb/anysee.c | |
parent | a43be980b3cf9c72f4bac4c7ce043e52004c6d90 (diff) |
[media] anysee: fix E30 Combo Plus TDA18212 GPIO
Looks like it is IF route switch on IOE[0]. Set it correctly
to route signal from tuner to demod. Now it works for DVB-C too.
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/dvb/dvb-usb/anysee.c')
-rw-r--r-- | drivers/media/dvb/dvb-usb/anysee.c | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/drivers/media/dvb/dvb-usb/anysee.c b/drivers/media/dvb/dvb-usb/anysee.c index fa5acd040e93..b0cac60d286f 100644 --- a/drivers/media/dvb/dvb-usb/anysee.c +++ b/drivers/media/dvb/dvb-usb/anysee.c | |||
@@ -612,6 +612,20 @@ static int anysee_tuner_attach(struct dvb_usb_adapter *adap) | |||
612 | /* E30 Combo Plus */ | 612 | /* E30 Combo Plus */ |
613 | /* E30 C Plus */ | 613 | /* E30 C Plus */ |
614 | 614 | ||
615 | if (dvb_usb_anysee_delsys) { | ||
616 | /* enable DVB-T tuner on IOE[0] */ | ||
617 | ret = anysee_wr_reg_mask(adap->dev, REG_IOE, (0 << 0), | ||
618 | 0x01); | ||
619 | if (ret) | ||
620 | goto error; | ||
621 | } else { | ||
622 | /* enable DVB-C tuner on IOE[0] */ | ||
623 | ret = anysee_wr_reg_mask(adap->dev, REG_IOE, (1 << 0), | ||
624 | 0x01); | ||
625 | if (ret) | ||
626 | goto error; | ||
627 | } | ||
628 | |||
615 | /* Try first attach TDA18212 silicon tuner on IOE[4], if that | 629 | /* Try first attach TDA18212 silicon tuner on IOE[4], if that |
616 | * fails attach old simple PLL. */ | 630 | * fails attach old simple PLL. */ |
617 | 631 | ||
@@ -631,20 +645,6 @@ static int anysee_tuner_attach(struct dvb_usb_adapter *adap) | |||
631 | if (ret) | 645 | if (ret) |
632 | goto error; | 646 | goto error; |
633 | 647 | ||
634 | if (dvb_usb_anysee_delsys) { | ||
635 | /* enable DVB-T tuner on IOE[0] */ | ||
636 | ret = anysee_wr_reg_mask(adap->dev, REG_IOE, (0 << 0), | ||
637 | 0x01); | ||
638 | if (ret) | ||
639 | goto error; | ||
640 | } else { | ||
641 | /* enable DVB-C tuner on IOE[0] */ | ||
642 | ret = anysee_wr_reg_mask(adap->dev, REG_IOE, (1 << 0), | ||
643 | 0x01); | ||
644 | if (ret) | ||
645 | goto error; | ||
646 | } | ||
647 | |||
648 | /* attach tuner */ | 648 | /* attach tuner */ |
649 | dvb_attach(dvb_pll_attach, adap->fe, (0xc0 >> 1), | 649 | dvb_attach(dvb_pll_attach, adap->fe, (0xc0 >> 1), |
650 | &adap->dev->i2c_adap, DVB_PLL_SAMSUNG_DTOS403IH102A); | 650 | &adap->dev->i2c_adap, DVB_PLL_SAMSUNG_DTOS403IH102A); |