From 7e2b371f596e6f4fd7d35c314676ac983a1e5671 Mon Sep 17 00:00:00 2001 From: Manu Abraham Date: Sun, 26 Feb 2006 15:31:11 +0400 Subject: fix broken IF-OUT Relay handling Thanks to Edgar Toernig Signed-off-by: Manu Abraham --- linux/drivers/media/dvb/bt8xx/dvb-bt8xx.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'linux/drivers/media/dvb/bt8xx') diff --git a/linux/drivers/media/dvb/bt8xx/dvb-bt8xx.c b/linux/drivers/media/dvb/bt8xx/dvb-bt8xx.c index 9db352157..0d1f6defc 100644 --- a/linux/drivers/media/dvb/bt8xx/dvb-bt8xx.c +++ b/linux/drivers/media/dvb/bt8xx/dvb-bt8xx.c @@ -240,6 +240,20 @@ static int cx24108_pll_set(struct dvb_frontend* fe, struct dvb_frontend_paramete static int pinnsat_pll_init(struct dvb_frontend* fe) { + struct dvb_bt8xx_card *card = fe->dvb->priv; + + bttv_gpio_enable(card->bttv_nr, 1, 1); /* output */ + bttv_write_gpio(card->bttv_nr, 1, 1); /* relay on */ + + return 0; +} + +static int pinnsat_pll_sleep(struct dvb_frontend* fe) +{ + struct dvb_bt8xx_card *card = fe->dvb->priv; + + bttv_write_gpio(card->bttv_nr, 1, 0); /* relay off */ + return 0; } @@ -247,6 +261,7 @@ static struct cx24110_config pctvsat_config = { .demod_address = 0x55, .pll_init = pinnsat_pll_init, .pll_set = cx24108_pll_set, + .pll_sleep = pinnsat_pll_sleep, }; static int microtune_mt7202dtf_pll_set(struct dvb_frontend* fe, struct dvb_frontend_parameters* params) -- cgit v1.2.3