V4L/DVB (8489): add dvb-t support for terratec cinergy hybrid T usb xs
authorreinhard schwab <reinhard.schwab@aon.at>
Sat, 26 Jul 2008 13:47:00 +0000 (10:47 -0300)
committerMauro Carvalho Chehab <mchehab@infradead.org>
Sat, 26 Jul 2008 16:18:12 +0000 (13:18 -0300)
This patch adds dvbt support for the terratec cinergy hybrid T usb xsstick.
Thanks to Devin Heitmueller and Mauro Chehab for guiding me.

Signed-off-by: Reinhard Schwab <reinhard.schwab@aon.at>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
drivers/media/video/em28xx/em28xx-cards.c
drivers/media/video/em28xx/em28xx-dvb.c

index 6e0eb95..edf6f77 100644 (file)
@@ -246,6 +246,7 @@ struct em28xx_board em28xx_boards[] = {
                .tda9887_conf = TDA9887_PRESENT,
                .tuner_type   = TUNER_XC2028,
                .decoder      = EM28XX_TVP5150,
+               .has_dvb        = 1,
                .input          = { {
                        .type     = EM28XX_VMUX_TELEVISION,
                        .vmux     = TVP5150_COMPOSITE0,
@@ -639,6 +640,9 @@ static void em28xx_setup_xc3028(struct em28xx *dev, struct xc2028_ctrl *ctl)
        case EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900:
                ctl->demod = XC3028_FE_ZARLINK456;
                break;
+       case EM2880_BOARD_TERRATEC_HYBRID_XS:
+               ctl->demod = XC3028_FE_ZARLINK456;
+               break;
        case EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900_R2:
                /* djh - Not sure which demod we need here */
                ctl->demod = XC3028_FE_DEFAULT;
index cc61cfb..9727653 100644 (file)
@@ -441,6 +441,15 @@ static int dvb_init(struct em28xx *dev)
                }
                break;
 #endif
+       case EM2880_BOARD_TERRATEC_HYBRID_XS:
+               dvb->frontend = dvb_attach(zl10353_attach,
+                                               &em28xx_zl10353_with_xc3028,
+                                               &dev->i2c_adap);
+               if (attach_xc3028(0x61, dev) < 0) {
+                        result = -EINVAL;
+                       goto out_free;
+               }
+               break;
        default:
                printk(KERN_ERR "%s/2: The frontend of your DVB/ATSC card"
                                " isn't supported yet\n",