From cca8604716d157840f57df616091036729c2c878 Mon Sep 17 00:00:00 2001 From: Gerd Knorr Date: Tue, 13 Apr 2004 11:59:22 +0000 Subject: - tda9887: secam-dk support - cx88: new pci subsystem id for cx88-cards.c - bt878: pinnacle/rave radio fix --- linux/drivers/media/video/bttv-cards.c | 2 +- linux/drivers/media/video/cx88/cx88-cards.c | 4 ++++ linux/drivers/media/video/tda9887.c | 28 +++++++++++++++++++++++++++- 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 @@ -240,6 +240,10 @@ struct cx88_subid cx88_subids[] = { .subvendor = 0x107d, .subdevice = 0x6620, .card = CX88_BOARD_WINFAST_DV2000, + },{ + .subvendor = 0x107d, + .subdevice = 0x663b, + .card = CX88_BOARD_LEADTEK_PVR2000, },{ .subvendor = 0x107d, .subdevice = 0x663C, 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 @@ -177,6 +177,14 @@ static struct tvnorm tvnorms[] = { cQSS ), .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", @@ -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; } -- cgit v1.2.3