V4L/DVB (10924): saa7134: enable serial transport streaming interface
authorMichael Krufky <mkrufky@linuxtv.org>
Tue, 13 Jan 2009 07:03:26 +0000 (04:03 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 30 Mar 2009 15:43:16 +0000 (12:43 -0300)
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/saa7134/saa7134-ts.c
drivers/media/video/saa7134/saa7134.h

index ef55a59..cc8b923 100644 (file)
@@ -79,8 +79,19 @@ static int buffer_activate(struct saa7134_dev *dev,
                saa_writeb(SAA7134_TS_SERIAL1, 0x00);
 
                /* Start TS stream */
-               saa_writeb(SAA7134_TS_SERIAL0, 0x40);
-               saa_writeb(SAA7134_TS_PARALLEL, 0xEC);
+               switch (saa7134_boards[dev->board].ts_type) {
+               case SAA7134_MPEG_TS_PARALLEL:
+                       saa_writeb(SAA7134_TS_SERIAL0, 0x40);
+                       saa_writeb(SAA7134_TS_PARALLEL, 0xec);
+                       break;
+               case SAA7134_MPEG_TS_SERIAL:
+                       saa_writeb(SAA7134_TS_SERIAL0, 0xd8);
+                       saa_writeb(SAA7134_TS_PARALLEL, 0x6c);
+                       saa_writeb(SAA7134_TS_PARALLEL_SERIAL, 0xbc);
+                       saa_writeb(SAA7134_TS_SERIAL1, 0x02);
+                       break;
+               }
+
                dev->ts_state = SAA7134_TS_STARTED;
        }
 
index f078de9..d1498e5 100644 (file)
@@ -312,6 +312,11 @@ enum saa7134_mpeg_type {
        SAA7134_MPEG_DVB,
 };
 
+enum saa7134_mpeg_ts_type {
+       SAA7134_MPEG_TS_PARALLEL = 0,
+       SAA7134_MPEG_TS_SERIAL,
+};
+
 struct saa7134_board {
        char                    *name;
        unsigned int            audio_clock;
@@ -334,6 +339,7 @@ struct saa7134_board {
        /* peripheral I/O */
        enum saa7134_video_out  video_out;
        enum saa7134_mpeg_type  mpeg;
+       enum saa7134_mpeg_ts_type ts_type;
        unsigned int            vid_port_opts;
 };