aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDevin Heitmueller <dheitmueller@kernellabs.com>2009-05-27 22:27:26 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-06-16 18:07:20 -0400
commit3ed58baf5db4eab553803916a990a3dbca4dc611 (patch)
treef6a6b4ac62b2f1a998fc49546fdaf3aa04464e6f
parentee3436b82886c0cb295354fb7ebbeadf3ff22105 (diff)
V4L/DVB (11925): em28xx: Add support for the K-World 2800d
Make the KWorld 2800d work properly. In this case, that means making the profile more generic so that it works for both the Pointnix Intra-Oral USB camera and the KWorld device. The device provides the audio through a pass-thru cable, so we don't need an actual audio capture profile (neither the K-World device nor the Pointnix have an onboard audio decoder). Thanks to Paul Thomas for providing sample hardware. Cc: Paul Thomas <pthomas8589@gmail.com> Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--Documentation/video4linux/CARDLIST.em28xx2
-rw-r--r--drivers/media/video/em28xx/em28xx-cards.c11
-rw-r--r--drivers/media/video/em28xx/em28xx.h2
3 files changed, 8 insertions, 7 deletions
diff --git a/Documentation/video4linux/CARDLIST.em28xx b/Documentation/video4linux/CARDLIST.em28xx
index 20aa65a7059c..b03a68586ebe 100644
--- a/Documentation/video4linux/CARDLIST.em28xx
+++ b/Documentation/video4linux/CARDLIST.em28xx
@@ -17,7 +17,7 @@
17 16 -> Hauppauge WinTV HVR 950 (em2883) [2040:6513,2040:6517,2040:651b] 17 16 -> Hauppauge WinTV HVR 950 (em2883) [2040:6513,2040:6517,2040:651b]
18 17 -> Pinnacle PCTV HD Pro Stick (em2880) [2304:0227] 18 17 -> Pinnacle PCTV HD Pro Stick (em2880) [2304:0227]
19 18 -> Hauppauge WinTV HVR 900 (R2) (em2880) [2040:6502] 19 18 -> Hauppauge WinTV HVR 900 (R2) (em2880) [2040:6502]
20 19 -> PointNix Intra-Oral Camera (em2860) 20 19 -> EM2860/SAA711X Reference Design (em2860)
21 20 -> AMD ATI TV Wonder HD 600 (em2880) [0438:b002] 21 20 -> AMD ATI TV Wonder HD 600 (em2880) [0438:b002]
22 21 -> eMPIA Technology, Inc. GrabBeeX+ Video Encoder (em2800) [eb1a:2801] 22 21 -> eMPIA Technology, Inc. GrabBeeX+ Video Encoder (em2800) [eb1a:2801]
23 22 -> Unknown EM2750/EM2751 webcam grabber (em2750) [eb1a:2750,eb1a:2751] 23 22 -> Unknown EM2750/EM2751 webcam grabber (em2750) [eb1a:2750,eb1a:2751]
diff --git a/drivers/media/video/em28xx/em28xx-cards.c b/drivers/media/video/em28xx/em28xx-cards.c
index 72cab9bcdf95..b2c26293b19c 100644
--- a/drivers/media/video/em28xx/em28xx-cards.c
+++ b/drivers/media/video/em28xx/em28xx-cards.c
@@ -1002,16 +1002,17 @@ struct em28xx_board em28xx_boards[] = {
1002 .amux = EM28XX_AMUX_LINE_IN, 1002 .amux = EM28XX_AMUX_LINE_IN,
1003 } }, 1003 } },
1004 }, 1004 },
1005 [EM2860_BOARD_POINTNIX_INTRAORAL_CAMERA] = { 1005 [EM2860_BOARD_SAA711X_REFERENCE_DESIGN] = {
1006 .name = "PointNix Intra-Oral Camera", 1006 .name = "EM2860/SAA711X Reference Design",
1007 .has_snapshot_button = 1, 1007 .has_snapshot_button = 1,
1008 .tda9887_conf = TDA9887_PRESENT,
1009 .tuner_type = TUNER_ABSENT, 1008 .tuner_type = TUNER_ABSENT,
1010 .decoder = EM28XX_SAA711X, 1009 .decoder = EM28XX_SAA711X,
1011 .input = { { 1010 .input = { {
1012 .type = EM28XX_VMUX_SVIDEO, 1011 .type = EM28XX_VMUX_SVIDEO,
1013 .vmux = SAA7115_SVIDEO3, 1012 .vmux = SAA7115_SVIDEO3,
1014 .amux = EM28XX_AMUX_VIDEO, 1013 }, {
1014 .type = EM28XX_VMUX_COMPOSITE1,
1015 .vmux = SAA7115_COMPOSITE0,
1015 } }, 1016 } },
1016 }, 1017 },
1017 [EM2880_BOARD_MSI_DIGIVOX_AD] = { 1018 [EM2880_BOARD_MSI_DIGIVOX_AD] = {
@@ -1519,7 +1520,7 @@ static struct em28xx_hash_table em28xx_eeprom_hash[] = {
1519static struct em28xx_hash_table em28xx_i2c_hash[] = { 1520static struct em28xx_hash_table em28xx_i2c_hash[] = {
1520 {0xb06a32c3, EM2800_BOARD_TERRATEC_CINERGY_200, TUNER_LG_PAL_NEW_TAPC}, 1521 {0xb06a32c3, EM2800_BOARD_TERRATEC_CINERGY_200, TUNER_LG_PAL_NEW_TAPC},
1521 {0xf51200e3, EM2800_BOARD_VGEAR_POCKETTV, TUNER_LG_PAL_NEW_TAPC}, 1522 {0xf51200e3, EM2800_BOARD_VGEAR_POCKETTV, TUNER_LG_PAL_NEW_TAPC},
1522 {0x1ba50080, EM2860_BOARD_POINTNIX_INTRAORAL_CAMERA, TUNER_ABSENT}, 1523 {0x1ba50080, EM2860_BOARD_SAA711X_REFERENCE_DESIGN, TUNER_ABSENT},
1523 {0xc51200e3, EM2820_BOARD_GADMEI_TVR200, TUNER_LG_PAL_NEW_TAPC}, 1524 {0xc51200e3, EM2820_BOARD_GADMEI_TVR200, TUNER_LG_PAL_NEW_TAPC},
1524}; 1525};
1525 1526
diff --git a/drivers/media/video/em28xx/em28xx.h b/drivers/media/video/em28xx/em28xx.h
index 8db797fedb7e..2ddd59d21096 100644
--- a/drivers/media/video/em28xx/em28xx.h
+++ b/drivers/media/video/em28xx/em28xx.h
@@ -58,7 +58,7 @@
58#define EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950 16 58#define EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950 16
59#define EM2880_BOARD_PINNACLE_PCTV_HD_PRO 17 59#define EM2880_BOARD_PINNACLE_PCTV_HD_PRO 17
60#define EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900_R2 18 60#define EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900_R2 18
61#define EM2860_BOARD_POINTNIX_INTRAORAL_CAMERA 19 61#define EM2860_BOARD_SAA711X_REFERENCE_DESIGN 19
62#define EM2880_BOARD_AMD_ATI_TV_WONDER_HD_600 20 62#define EM2880_BOARD_AMD_ATI_TV_WONDER_HD_600 20
63#define EM2800_BOARD_GRABBEEX_USB2800 21 63#define EM2800_BOARD_GRABBEEX_USB2800 21
64#define EM2750_BOARD_UNKNOWN 22 64#define EM2750_BOARD_UNKNOWN 22