Skip to contentSkip to conversation

Support for Samsung SMT7020

linux-dvb Helmut Auer 2 participants 2 messages Feb 14, 2008 – Oct 30, 2008 Media (V4L/DVB)

lore
Share & tools
lore
#0 lore raw

Hello List

The attached patch (written by Dirk Herrendoerfer) adds support for the builtin tuner of the samsung smt7020 box ( based on an Intel830 board ). It would be fine to see this one inside the v4l tree.

Signature · 1 line
Helmut Auer, [email protected] 
linux/drivers/media/video/cx88/cx88-cards.c +27 -0
diff -purN v4l-dvb.orig/linux/drivers/media/video/cx88/cx88-cards.c v4l-dvb/linux/drivers/media/video/cx88/cx88-cards.c
@@ -1362,6 +1362,19 @@ struct cx88_board cx88_boards[] = {
 		/* fixme: Add radio support */
 		.mpeg           = CX88_MPEG_DVB | CX88_MPEG_BLACKBIRD,
 	},
+	[CX88_BOARD_SAMSUNG_SMT_7020] = {
+		.name		= "Samsung SMT 7020 DVB-S",
+		.tuner_type	= TUNER_ABSENT,
+		.radio_type	= UNSET,
+		.tuner_addr	= ADDR_UNSET,
+		.radio_addr	= ADDR_UNSET,
+		.input		= {{
+			.type	= CX88_VMUX_DVB,
+			.vmux	= 0,
+		}},
+		.mpeg           = CX88_MPEG_DVB,
+	},
+	
 };
 const unsigned int cx88_bcount = ARRAY_SIZE(cx88_boards);
 
@@ -1664,6 +1677,14 @@ struct cx88_subid cx88_subids[] = {
 		.subvendor = 0x0070,
 		.subdevice = 0x1402,
 		.card      = CX88_BOARD_HAUPPAUGE_HVR3000,
+	},{
+		.subvendor = 0x18ac,
+		.subdevice = 0xdc00,
+		.card      = CX88_BOARD_SAMSUNG_SMT_7020,
+	},{
+		.subvendor = 0x18ac,
+		.subdevice = 0xdccd,
+		.card      = CX88_BOARD_SAMSUNG_SMT_7020,
 	},{
 		.subvendor = 0x1461,                
 const unsigned int cx88_idcount = ARRAY_SIZE(cx88_subids);
@@ -1955,6 +1973,12 @@ void cx88_card_setup(struct cx88_core *c
 						core->name, i);
 		}
 		break;
+	case CX88_BOARD_SAMSUNG_SMT_7020:
+		cx_set(MO_GP0_IO, 0x008989FF);
+		//cx_set(MO_GP3_IO, 0x00000000);
+		printk("!!Samsung RESET done.\n");
+		break;
+		
 	}
 	if (cx88_boards[core->board].radio.type == CX88_RADIO)
 		core->has_radio = 1;
linux/drivers/media/video/cx88/cx88-dvb.c +210 -0

228 lines not on this page · raw message

linux/drivers/media/video/cx88/cx88-mpeg.c +3 -0
diff -purN v4l-dvb.orig/linux/drivers/media/video/cx88/cx88-mpeg.c v4l-dvb/linux/drivers/media/video/cx88/cx88-mpeg.c
@@ -98,6 +98,9 @@ static int cx8802_start_dma(struct cx880
 		case CX88_BOARD_PCHDTV_HD5500:
 			cx_write(TS_SOP_STAT, 1<<13);
 			break;
+		case CX88_BOARD_SAMSUNG_SMT_7020:
+			cx_write(TS_SOP_STAT, 0x00);
+			break;
 		case CX88_BOARD_HAUPPAUGE_NOVASPLUS_S1:
 		case CX88_BOARD_HAUPPAUGE_NOVASE2_S1:
 			cx_write(MO_PINMUX_IO, 0x88); /* Enable MPEG parallel IO and video signal pins */
linux/drivers/media/video/cx88/cx88.h +1 -0
diff -purN v4l-dvb.orig/linux/drivers/media/video/cx88/cx88.h v4l-dvb/linux/drivers/media/video/cx88/cx88.h
@@ -212,6 +212,7 @@ extern struct sram_channel cx88_sram_cha
 #define CX88_BOARD_HAUPPAUGE_HVR1300       56
 #define CX88_BOARD_ADSTECH_PTV_390         57
 #define CX88_BOARD_PINNACLE_PCTV_HD_800i   58
+#define CX88_BOARD_SAMSUNG_SMT_7020        59
 
 enum cx88_itype {
 	CX88_VMUX_COMPOSITE1 = 1,

_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

#1 lore raw

Hi Helmut,

Quoted 6 lines · On Thu, 14 Feb 2008 20:13:02 +0100 Helmut Auer <[email protected]> wrote:

Hello List

The attached patch (written by Dirk Herrendoerfer) adds support for the builtin tuner of the samsung smt7020 box ( based on an Intel830 board ). It would be fine to see this one inside the v4l tree.

Only today I noticed your patch, after starting to use a tool that digs patches at the ML and creates a queue.

This patch have a few troubles:

1) It lacks your SOB (and also Dirk's SOB);

2) the smt7020 frontend code should be outside cx88-dvb. You need to create a separate module for this frontend, like for example cx24123.c;

3) there are a few CodingStyle errors.

Please review and submit it again.

Cheers,
Mauro

_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb