summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerd Knorr <devnull@localhost>2004-04-13 11:59:22 +0000
committerGerd Knorr <devnull@localhost>2004-04-13 11:59:22 +0000
commitcca8604716d157840f57df616091036729c2c878 (patch)
tree7db4fc52bb25cfc515560fbd4c611fd67eda6b10
parent6084d0fcb5e3ac907b4dc6a4421764f9e54a458f (diff)
downloadmediapointer-dvb-s2-cca8604716d157840f57df616091036729c2c878.tar.gz
mediapointer-dvb-s2-cca8604716d157840f57df616091036729c2c878.tar.bz2
- tda9887: secam-dk support
- cx88: new pci subsystem id for cx88-cards.c - bt878: pinnacle/rave radio fix
-rw-r--r--linux/drivers/media/video/bttv-cards.c2
-rw-r--r--linux/drivers/media/video/cx88/cx88-cards.c4
-rw-r--r--linux/drivers/media/video/tda9887.c28
3 files changed, 32 insertions, 2 deletions
diff --git a/linux/drivers/media/video/bttv-cards.c b/linux/drivers/media/video/bttv-cards.c
index eff9a759e..9fd9f89ea 100644
--- a/linux/drivers/media/video/bttv-cards.c
+++ b/linux/drivers/media/video/bttv-cards.c
@@ -835,7 +835,7 @@ struct tvcard bttv_tvcards[] = {
.svhs = 2,
.gpiomask = 0x03000F,
.muxsel = { 2, 3, 1, 1},
- .audiomux = { 2, 0, 0, 0, 1},
+ .audiomux = { 2, 0xd0001, 0, 0, 1},
.needs_tvaudio = 0,
.pll = PLL_28,
.tuner_type = -1,
diff --git a/linux/drivers/media/video/cx88/cx88-cards.c b/linux/drivers/media/video/cx88/cx88-cards.c
index 827893f9c..7b485a033 100644
--- a/linux/drivers/media/video/cx88/cx88-cards.c
+++ b/linux/drivers/media/video/cx88/cx88-cards.c
@@ -242,6 +242,10 @@ struct cx88_subid cx88_subids[] = {
.card = CX88_BOARD_WINFAST_DV2000,
},{
.subvendor = 0x107d,
+ .subdevice = 0x663b,
+ .card = CX88_BOARD_LEADTEK_PVR2000,
+ },{
+ .subvendor = 0x107d,
.subdevice = 0x663C,
.card = CX88_BOARD_LEADTEK_PVR2000,
},{
diff --git a/linux/drivers/media/video/tda9887.c b/linux/drivers/media/video/tda9887.c
index 4d07eb2b6..f71b1c17f 100644
--- a/linux/drivers/media/video/tda9887.c
+++ b/linux/drivers/media/video/tda9887.c
@@ -178,6 +178,14 @@ static struct tvnorm tvnorms[] = {
.e = ( cAudioIF_6_5 |
cVideoIF_38_90 ),
},{
+ .std = V4L2_STD_SECAM_D | V4L2_STD_SECAM_K,
+ .name = "SECAM-DK",
+ .b = ( cNegativeFmTV ),
+ .c = ( cDeemphasisON |
+ cDeemphasis50 ),
+ .e = ( cAudioIF_6_5 |
+ cVideoIF_38_00 ),
+ },{
.std = V4L2_STD_NTSC_M,
.name = "NTSC-M",
.b = ( cNegativeFmTV ),
@@ -413,11 +421,13 @@ static int tda9887_set_pinnacle(struct tda9887 *t, char *buf)
static char *pal = "-";
MODULE_PARM(pal,"s");
+static char *secam = "-";
+MODULE_PARM(secam,"s");
static int tda9887_fixup_std(struct tda9887 *t)
{
+ /* get more precise norm info from insmod option */
if ((t->std & V4L2_STD_PAL) == V4L2_STD_PAL) {
- /* get more precise norm info from insmod option */
switch (pal[0]) {
case 'b':
case 'B':
@@ -440,6 +450,22 @@ static int tda9887_fixup_std(struct tda9887 *t)
break;
}
}
+ if ((t->std & V4L2_STD_SECAM) == V4L2_STD_SECAM) {
+ switch (secam[0]) {
+ case 'd':
+ case 'D':
+ case 'k':
+ case 'K':
+ dprintk("insmod fixup: SECAM => SECAM-DK\n");
+ t->std = V4L2_STD_SECAM_D | V4L2_STD_SECAM_K;
+ break;
+ case 'l':
+ case 'L':
+ dprintk("insmod fixup: SECAM => SECAM-L\n");
+ t->std = V4L2_STD_SECAM_L;
+ break;
+ }
+ }
return 0;
}