aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2009-02-11 14:18:36 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-03-30 12:42:43 -0300
commit56ee38071fe0cf1746d53c5b40a46a835b24fbe4 (patch)
tree5779e620a9756d7d2635c9fd7b927a722ebb8667
parent9fc2c5ee5d9d797730dd05616757b329f6a227e9 (diff)
downloadkernel_samsung_smdk4412-56ee38071fe0cf1746d53c5b40a46a835b24fbe4.zip
kernel_samsung_smdk4412-56ee38071fe0cf1746d53c5b40a46a835b24fbe4.tar.gz
kernel_samsung_smdk4412-56ee38071fe0cf1746d53c5b40a46a835b24fbe4.tar.bz2
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 e914b13..b336dca 100644
--- a/Documentation/video4linux/CARDLIST.em28xx
+++ b/Documentation/video4linux/CARDLIST.em28xx
@@ -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)
diff --git a/drivers/media/video/em28xx/em28xx-cards.c b/drivers/media/video/em28xx/em28xx-cards.c
index 2048a87..1f38e35 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[] = {
.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);
diff --git a/drivers/media/video/em28xx/em28xx.h b/drivers/media/video/em28xx/em28xx.h
index 24fc8b4..3d94afb 100644
--- a/drivers/media/video/em28xx/em28xx.h
+++ b/drivers/media/video/em28xx/em28xx.h
@@ -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