summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video
diff options
context:
space:
mode:
authorGerd Knorr <devnull@localhost>2004-03-17 11:31:09 +0000
committerGerd Knorr <devnull@localhost>2004-03-17 11:31:09 +0000
commitbeb2299584ecafa931ad0835b148bf63c2ed32a4 (patch)
treef3b1f309931bcc14f7090c8f62a503ff5fd98231 /linux/drivers/media/video
parent636961cd434486df47dcb5b14944bfd9f0f11775 (diff)
downloadmediapointer-dvb-s2-beb2299584ecafa931ad0835b148bf63c2ed32a4.tar.gz
mediapointer-dvb-s2-beb2299584ecafa931ad0835b148bf63c2ed32a4.tar.bz2
- bttv card list update.
- attempt to fix svideo in cx88. - documentation update.
Diffstat (limited to 'linux/drivers/media/video')
-rw-r--r--linux/drivers/media/video/bttv-cards.c10
-rw-r--r--linux/drivers/media/video/cx88/cx88-cards.c5
-rw-r--r--linux/drivers/media/video/cx88/cx88-video.c15
3 files changed, 23 insertions, 7 deletions
diff --git a/linux/drivers/media/video/bttv-cards.c b/linux/drivers/media/video/bttv-cards.c
index f1d09b44c..133902a86 100644
--- a/linux/drivers/media/video/bttv-cards.c
+++ b/linux/drivers/media/video/bttv-cards.c
@@ -746,9 +746,15 @@ struct tvcard bttv_tvcards[] = {
.audio_inputs = 1,
.tuner = 0,
.svhs = 2,
- .gpiomask = 0xc33000,
.muxsel = { 2, 3, 1, 1, 0}, // TV, CVid, SVid, CVid over SVid connector
- .audiomux = { 0x422000,0x1000,0x0000,0x620000,0x800000},
+#if 0
+ .gpiomask = 0xc33000,
+ .audiomux = { 0x422000,0x1000,0x0000,0x620000,0x800000 },
+#else
+ /* Alexander Varakin <avarakin@hotmail.com> [stereo version] */
+ .gpiomask = 0xb33000,
+ .audiomux = { 0x122000,0x1000,0x0000,0x620000,0x800000 },
+#endif
/* Audio Routing for "WinFast 2000 XP" (no tv stereo !)
gpio23 -- hef4052:nEnable (0x800000)
gpio12 -- hef4052:A1
diff --git a/linux/drivers/media/video/cx88/cx88-cards.c b/linux/drivers/media/video/cx88/cx88-cards.c
index 1cb7cd0e6..bd2de4ef1 100644
--- a/linux/drivers/media/video/cx88/cx88-cards.c
+++ b/linux/drivers/media/video/cx88/cx88-cards.c
@@ -52,12 +52,11 @@ struct cx88_board cx88_boards[] = {
.input = {{
.type = CX88_VMUX_TELEVISION,
.vmux = 0,
- //.gpio0 = 0xff03,
- .gpio0 = 0xff00,
+ .gpio0 = 0xff00, // internal decoder
},{
.type = CX88_VMUX_DEBUG,
.vmux = 0,
- .gpio0 = 0xff01,
+ .gpio0 = 0xff01, // mono from tuner chip
},{
.type = CX88_VMUX_COMPOSITE1,
.vmux = 1,
diff --git a/linux/drivers/media/video/cx88/cx88-video.c b/linux/drivers/media/video/cx88/cx88-video.c
index 057d9253e..a56c7e90d 100644
--- a/linux/drivers/media/video/cx88/cx88-video.c
+++ b/linux/drivers/media/video/cx88/cx88-video.c
@@ -662,14 +662,25 @@ static int set_scale(struct cx8800_dev *dev, unsigned int width, unsigned int he
static int video_mux(struct cx8800_dev *dev, unsigned int input)
{
- dprintk(1,"video_mux: %d [vmux=%d,gpio=0x%x]\n",
- input, INPUT(input)->vmux, INPUT(input)->gpio0);
+ dprintk(1,"video_mux: %d [vmux=%d,gpio=0x%x,0x%x,0x%x,0x%x]\n",
+ input, INPUT(input)->vmux,
+ INPUT(input)->gpio0,INPUT(input)->gpio1,
+ INPUT(input)->gpio2,INPUT(input)->gpio3);
dev->input = input;
cx_andor(MO_INPUT_FORMAT, 0x03 << 14, INPUT(input)->vmux << 14);
cx_write(MO_GP0_IO, INPUT(input)->gpio0);
cx_write(MO_GP1_IO, INPUT(input)->gpio1);
cx_write(MO_GP2_IO, INPUT(input)->gpio2);
cx_write(MO_GP3_IO, INPUT(input)->gpio3);
+
+ switch (INPUT(input)->type) {
+ case CX88_VMUX_SVIDEO:
+ cx_andor(MO_AFECFG_IO, 0x01, 0x01);
+ break;
+ default:
+ cx_andor(MO_AFECFG_IO, 0x01, 0x00);
+ break;
+ }
return 0;
}