V4L/DVB (10516): em28xx: Add support for Easy Cap Capture DC-60
authorMauro Carvalho Chehab <mchehab@redhat.com>
Wed, 11 Feb 2009 17:18:36 +0000 (14:18 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 30 Mar 2009 15:42:43 +0000 (12:42 -0300)
Thanks to Peter Senna Tschudin <peter.senna@gmail.com> for borrow me one
of those devices.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Documentation/video4linux/CARDLIST.em28xx
drivers/media/video/em28xx/em28xx-cards.c
drivers/media/video/em28xx/em28xx.h

index e914b137434788b59f4cc559a9f5d0440d8bf5a2..b336dcab139c6d8e0fbff1c8902e19b327bf149b 100644 (file)
@@ -57,6 +57,7 @@
  57 -> Kworld PlusTV HD Hybrid 330              (em2883)        [eb1a:a316]
  58 -> Compro VideoMate ForYou/Stereo           (em2820/em2840) [185b:2041]
  60 -> Hauppauge WinTV HVR 850                  (em2883)        [2040:651f]
- 61 -> Kaiomy TVnPC U2                          (em2860)        [eb1a:e303]
  61 -> Pixelview PlayTV Box 4 USB 2.0           (em2820/em2840)
  62 -> Gadmei TVR200                            (em2820/em2840)
+ 63 -> Kaiomy TVnPC U2                          (em2860)        [eb1a:e303]
+ 64 -> Easy Cap Capture DC-60                   (em2860)
index 2048a8761099482a95ccc629d50bce2b547519d5..1f38e35355ce00870debe1a0050c3edf55f7bc4a 100644 (file)
@@ -1279,7 +1279,22 @@ struct em28xx_board em28xx_boards[] = {
                        .type     = EM28XX_RADIO,
                        .amux     = EM28XX_AMUX_LINE_IN,
                }
-       }
+       },
+       [EM2860_BOARD_EASYCAP] = {
+               .name         = "Easy Cap Capture DC-60",
+               .vchannels    = 2,
+               .tuner_type   = TUNER_ABSENT,
+               .decoder      = EM28XX_SAA711X,
+               .input           = { {
+                       .type     = EM28XX_VMUX_COMPOSITE1,
+                       .vmux     = SAA7115_COMPOSITE0,
+                       .amux     = EM28XX_AMUX_LINE_IN,
+               }, {
+                       .type     = EM28XX_VMUX_SVIDEO,
+                       .vmux     = SAA7115_SVIDEO3,
+                       .amux     = EM28XX_AMUX_LINE_IN,
+               } },
+       },
 };
 const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards);
 
@@ -1568,6 +1583,10 @@ void em28xx_pre_card_setup(struct em28xx *dev)
                em28xx_write_regs(dev, 0x08, "\x6b", 1);
 
                break;
+       case EM2860_BOARD_EASYCAP:
+               em28xx_write_regs(dev, 0x08, "\xf8", 1);
+               break;
+
        }
 
        em28xx_gpio_set(dev, dev->board.tuner_gpio);
index 24fc8b429466158fe6a53bd3a9a72019693f2a46..3d94afb55b5602d6b17119193b5a336212e41d55 100644 (file)
@@ -99,7 +99,8 @@
 #define EM2883_BOARD_HAUPPAUGE_WINTV_HVR_850     60
 #define EM2820_BOARD_PROLINK_PLAYTV_BOX4_USB2    61
 #define EM2820_BOARD_GADMEI_TVR200               62
-#define EM2860_BOARD_KAIOMY_TVNPC_U2              61
+#define EM2860_BOARD_KAIOMY_TVNPC_U2              63
+#define EM2860_BOARD_EASYCAP                      64
 
 /* Limits minimum and default number of buffers */
 #define EM28XX_MIN_BUF 4