aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2009-02-11 12:18:36 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-03-30 11:42:43 -0400
commit56ee38071fe0cf1746d53c5b40a46a835b24fbe4 (patch)
tree5779e620a9756d7d2635c9fd7b927a722ebb8667
parent9fc2c5ee5d9d797730dd05616757b329f6a227e9 (diff)
V4L/DVB (10516): em28xx: Add support for Easy Cap Capture DC-60
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>
-rw-r--r--Documentation/video4linux/CARDLIST.em28xx3
-rw-r--r--drivers/media/video/em28xx/em28xx-cards.c21
-rw-r--r--drivers/media/video/em28xx/em28xx.h3
3 files changed, 24 insertions, 3 deletions
diff --git a/Documentation/video4linux/CARDLIST.em28xx b/Documentation/video4linux/CARDLIST.em28xx
index e914b1374347..b336dcab139c 100644
--- a/Documentation/video4linux/CARDLIST.em28xx
+++ b/Documentation/video4linux/CARDLIST.em28xx
@@ -57,6 +57,7 @@
57 57 -> Kworld PlusTV HD Hybrid 330 (em2883) [eb1a:a316] 57 57 -> Kworld PlusTV HD Hybrid 330 (em2883) [eb1a:a316]
58 58 -> Compro VideoMate ForYou/Stereo (em2820/em2840) [185b:2041] 58 58 -> Compro VideoMate ForYou/Stereo (em2820/em2840) [185b:2041]
59 60 -> Hauppauge WinTV HVR 850 (em2883) [2040:651f] 59 60 -> Hauppauge WinTV HVR 850 (em2883) [2040:651f]
60 61 -> Kaiomy TVnPC U2 (em2860) [eb1a:e303]
61 61 -> Pixelview PlayTV Box 4 USB 2.0 (em2820/em2840) 60 61 -> Pixelview PlayTV Box 4 USB 2.0 (em2820/em2840)
62 62 -> Gadmei TVR200 (em2820/em2840) 61 62 -> Gadmei TVR200 (em2820/em2840)
62 63 -> Kaiomy TVnPC U2 (em2860) [eb1a:e303]
63 64 -> Easy Cap Capture DC-60 (em2860)
diff --git a/drivers/media/video/em28xx/em28xx-cards.c b/drivers/media/video/em28xx/em28xx-cards.c
index 2048a8761099..1f38e35355ce 100644
--- a/drivers/media/video/em28xx/em28xx-cards.c
+++ b/drivers/media/video/em28xx/em28xx-cards.c
@@ -1279,7 +1279,22 @@ struct em28xx_board em28xx_boards[] = {
1279 .type = EM28XX_RADIO, 1279 .type = EM28XX_RADIO,
1280 .amux = EM28XX_AMUX_LINE_IN, 1280 .amux = EM28XX_AMUX_LINE_IN,
1281 } 1281 }
1282 } 1282 },
1283 [EM2860_BOARD_EASYCAP] = {
1284 .name = "Easy Cap Capture DC-60",
1285 .vchannels = 2,
1286 .tuner_type = TUNER_ABSENT,
1287 .decoder = EM28XX_SAA711X,
1288 .input = { {
1289 .type = EM28XX_VMUX_COMPOSITE1,
1290 .vmux = SAA7115_COMPOSITE0,
1291 .amux = EM28XX_AMUX_LINE_IN,
1292 }, {
1293 .type = EM28XX_VMUX_SVIDEO,
1294 .vmux = SAA7115_SVIDEO3,
1295 .amux = EM28XX_AMUX_LINE_IN,
1296 } },
1297 },
1283}; 1298};
1284const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards); 1299const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards);
1285 1300
@@ -1568,6 +1583,10 @@ void em28xx_pre_card_setup(struct em28xx *dev)
1568 em28xx_write_regs(dev, 0x08, "\x6b", 1); 1583 em28xx_write_regs(dev, 0x08, "\x6b", 1);
1569 1584
1570 break; 1585 break;
1586 case EM2860_BOARD_EASYCAP:
1587 em28xx_write_regs(dev, 0x08, "\xf8", 1);
1588 break;
1589
1571 } 1590 }
1572 1591
1573 em28xx_gpio_set(dev, dev->board.tuner_gpio); 1592 em28xx_gpio_set(dev, dev->board.tuner_gpio);
diff --git a/drivers/media/video/em28xx/em28xx.h b/drivers/media/video/em28xx/em28xx.h
index 24fc8b429466..3d94afb55b56 100644
--- a/drivers/media/video/em28xx/em28xx.h
+++ b/drivers/media/video/em28xx/em28xx.h
@@ -99,7 +99,8 @@
99#define EM2883_BOARD_HAUPPAUGE_WINTV_HVR_850 60 99#define EM2883_BOARD_HAUPPAUGE_WINTV_HVR_850 60
100#define EM2820_BOARD_PROLINK_PLAYTV_BOX4_USB2 61 100#define EM2820_BOARD_PROLINK_PLAYTV_BOX4_USB2 61
101#define EM2820_BOARD_GADMEI_TVR200 62 101#define EM2820_BOARD_GADMEI_TVR200 62
102#define EM2860_BOARD_KAIOMY_TVNPC_U2 61 102#define EM2860_BOARD_KAIOMY_TVNPC_U2 63
103#define EM2860_BOARD_EASYCAP 64
103 104
104/* Limits minimum and default number of buffers */ 105/* Limits minimum and default number of buffers */
105#define EM28XX_MIN_BUF 4 106#define EM28XX_MIN_BUF 4