V4L/DVB (7986): cx23885: add initial support for DViCO FusionHDTV7 Dual Express
[linux-2.6.git] / drivers / media / video / cx23885 / cx23885-cards.c
index 20e05f2..fd7112c 100644 (file)
@@ -143,6 +143,10 @@ struct cx23885_board cx23885_boards[] = {
                .name           = "Hauppauge WinTV-HVR1400",
                .portc          = CX23885_MPEG_DVB,
        },
+       [CX23885_BOARD_DVICO_FUSIONHDTV_7_DUAL_EXP] = {
+               .name           = "DViCO FusionHDTV7 Dual Express",
+               .portc          = CX23885_MPEG_DVB,
+       },
 };
 const unsigned int cx23885_bcount = ARRAY_SIZE(cx23885_boards);
 
@@ -210,6 +214,10 @@ struct cx23885_subid cx23885_subids[] = {
                .subvendor = 0x0070,
                .subdevice = 0x8010,
                .card      = CX23885_BOARD_HAUPPAUGE_HVR1400,
+       },{
+               .subvendor = 0x18ac,
+               .subdevice = 0xd618,
+               .card      = CX23885_BOARD_DVICO_FUSIONHDTV_7_DUAL_EXP,
        },
 };
 const unsigned int cx23885_idcount = ARRAY_SIZE(cx23885_subids);
@@ -477,6 +485,11 @@ void cx23885_card_setup(struct cx23885_dev *dev)
        }
 
        switch (dev->board) {
+       case CX23885_BOARD_DVICO_FUSIONHDTV_7_DUAL_EXP:
+               ts2->gen_ctrl_val  = 0xc; /* Serial bus + punctured clock */
+               ts2->ts_clk_en_val = 0x1; /* Enable TS_CLK */
+               ts2->src_sel_val   = CX23885_SRC_SEL_PARALLEL_MPEG_VIDEO;
+               /* break omitted intentionally */
        case CX23885_BOARD_DVICO_FUSIONHDTV_5_EXP:
                ts1->gen_ctrl_val  = 0xc; /* Serial bus + punctured clock */
                ts1->ts_clk_en_val = 0x1; /* Enable TS_CLK */