瀏覽代碼

V4L/DVB (4056): Cx88: Add basic support for Leadtek Winfast DTV2000H card

Add DVB-T and PAL-G television support for Winfast DTV2000H

Signed-off-by: Malcolm Valentine <farkit@iinet.net.au>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Malcolm Valentine 19 年之前
父節點
當前提交
4bd6e9d968

+ 1 - 0
Documentation/video4linux/CARDLIST.cx88

@@ -49,3 +49,4 @@
  48 -> Kworld MCE 200 Deluxe                               [17de:0841]
  49 -> PixelView PlayTV P7000                              [1554:4813]
  50 -> NPG Tech Real TV                                    [14f1:0842]
+ 51 -> WinFast DTV2000 H                                   [107d:665e]

+ 22 - 0
drivers/media/video/cx88/cx88-cards.c

@@ -1175,6 +1175,24 @@ struct cx88_board cx88_boards[] = {
 			 .gpio0 = 0x074a,
 		},
 	},
+	[CX88_BOARD_WINFAST_DTV2000H] = {
+		/* video inputs and radio still in testing */
+		.name           = "WinFast DTV2000 H",
+		.tuner_type     = TUNER_PHILIPS_FMD1216ME_MK3,
+		.radio_type     = UNSET,
+		.tuner_addr     = ADDR_UNSET,
+		.radio_addr     = ADDR_UNSET,
+		.tda9887_conf   = TDA9887_PRESENT,
+		.input          = {{
+			.type   = CX88_VMUX_TELEVISION,
+			.vmux   = 0,
+			.gpio0  = 0x00017304,
+			.gpio1  = 0x00008203,
+			.gpio2  = 0x00017304,
+			.gpio3  = 0x02000000,
+		}},
+		.dvb            = 1,
+	},
 };
 const unsigned int cx88_bcount = ARRAY_SIZE(cx88_boards);
 
@@ -1412,6 +1430,10 @@ struct cx88_subid cx88_subids[] = {
 		.subvendor = 0x14f1,
 		.subdevice = 0x0842,
 		.card      = CX88_BOARD_NPGTECH_REALTV,
+	},{
+		.subvendor = 0x107d,
+		.subdevice = 0x665e,
+		.card      = CX88_BOARD_WINFAST_DTV2000H,
 	},
 };
 const unsigned int cx88_idcount = ARRAY_SIZE(cx88_subids);

+ 1 - 0
drivers/media/video/cx88/cx88-dvb.c

@@ -533,6 +533,7 @@ static int dvb_register(struct cx8802_dev *dev)
 			dvb_pll_attach(dev->dvb.frontend, 0x60, &dev->core->i2c_adap, &dvb_pll_thomson_dtt7579);
 		}
 		break;
+	case CX88_BOARD_WINFAST_DTV2000H:
 	case CX88_BOARD_HAUPPAUGE_HVR1100:
 	case CX88_BOARD_HAUPPAUGE_HVR1100LP:
 		dev->dvb.frontend = cx22702_attach(&hauppauge_hvr1100_config,

+ 2 - 1
drivers/media/video/cx88/cx88.h

@@ -192,7 +192,8 @@ extern struct sram_channel cx88_sram_channels[];
 #define CX88_BOARD_PCHDTV_HD5500           47
 #define CX88_BOARD_KWORLD_MCE200_DELUXE    48
 #define CX88_BOARD_PIXELVIEW_PLAYTV_P7000  49
-#define CX88_BOARD_NPGTECH_REALTV  50
+#define CX88_BOARD_NPGTECH_REALTV          50
+#define CX88_BOARD_WINFAST_DTV2000H        51
 
 enum cx88_itype {
 	CX88_VMUX_COMPOSITE1 = 1,