summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/tda9887.c
diff options
context:
space:
mode:
authorGerd Knorr <devnull@localhost>2004-04-22 11:06:45 +0000
committerGerd Knorr <devnull@localhost>2004-04-22 11:06:45 +0000
commit8eaf3df89e72c6bcad69267531b1b05390cffa54 (patch)
tree351321c4b9b6b6e011df4057755f9b36249549bb /linux/drivers/media/video/tda9887.c
parenta35cda5504266d06a8ecb0fe58b5a36e27f7220b (diff)
downloadmediapointer-dvb-s2-8eaf3df89e72c6bcad69267531b1b05390cffa54.tar.gz
mediapointer-dvb-s2-8eaf3df89e72c6bcad69267531b1b05390cffa54.tar.bz2
- cx88: print some help for unknown cards.
- tda9887: make qss insmod option work for both enable/disable.
Diffstat (limited to 'linux/drivers/media/video/tda9887.c')
-rw-r--r--linux/drivers/media/video/tda9887.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/linux/drivers/media/video/tda9887.c b/linux/drivers/media/video/tda9887.c
index 4385c2ee2..377ac7397 100644
--- a/linux/drivers/media/video/tda9887.c
+++ b/linux/drivers/media/video/tda9887.c
@@ -370,7 +370,7 @@ static int tda9887_set_tvnorm(struct tda9887 *t, char *buf)
static unsigned int port1 = 1;
static unsigned int port2 = 1;
-static unsigned int qss = 0;
+static unsigned int qss = UNSET;
static unsigned int adjust = 0x10;
MODULE_PARM(port1,"i");
MODULE_PARM(port2,"i");
@@ -383,10 +383,16 @@ static int tda9887_set_insmod(struct tda9887 *t, char *buf)
buf[1] |= cOutputPort1Inactive;
if (port2)
buf[1] |= cOutputPort2Inactive;
- if (qss)
- buf[1] |= cQSS;
+ if (UNSET != qss) {
+ if (qss)
+ buf[1] |= cQSS;
+ else
+ buf[1] &= ~cQSS;
+ }
+
if (adjust >= 0x00 && adjust < 0x20)
buf[2] |= adjust;
+ return 0;
}
/* ---------------------------------------------------------------------- */
@@ -500,6 +506,7 @@ static int tda9887_status(struct tda9887 *t)
if (1 != (rc = i2c_master_recv(&t->client,buf,1)))
printk(PREFIX "i2c i/o error: rc == %d (should be 1)\n",rc);
dump_read_message(buf);
+ return 0;
}
/* ---------------------------------------------------------------------- */