diff options
-rw-r--r-- | Documentation/video4linux/CARDLIST.em28xx | 3 | ||||
-rw-r--r-- | drivers/media/video/em28xx/em28xx-cards.c | 32 | ||||
-rw-r--r-- | drivers/media/video/em28xx/em28xx-dvb.c | 1 | ||||
-rw-r--r-- | drivers/media/video/em28xx/em28xx.h | 1 |
4 files changed, 34 insertions, 3 deletions
diff --git a/Documentation/video4linux/CARDLIST.em28xx b/Documentation/video4linux/CARDLIST.em28xx index ea537f5ae408..a6734eb7bf7b 100644 --- a/Documentation/video4linux/CARDLIST.em28xx +++ b/Documentation/video4linux/CARDLIST.em28xx | |||
@@ -14,7 +14,7 @@ | |||
14 | 13 -> Terratec Prodigy XS (em2880) [0ccd:0047] | 14 | 13 -> Terratec Prodigy XS (em2880) [0ccd:0047] |
15 | 14 -> Pixelview Prolink PlayTV USB 2.0 (em2820/em2840) [eb1a:2821] | 15 | 14 -> Pixelview Prolink PlayTV USB 2.0 (em2820/em2840) [eb1a:2821] |
16 | 15 -> V-Gear PocketTV (em2800) | 16 | 15 -> V-Gear PocketTV (em2800) |
17 | 16 -> Hauppauge WinTV HVR 950 (em2883) [2040:6513,2040:6517,2040:651b,2040:651f] | 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 -> PointNix Intra-Oral Camera (em2860) |
@@ -58,3 +58,4 @@ | |||
58 | 57 -> Kworld PlusTV HD Hybrid 330 (em2883) [eb1a:a316] | 58 | 57 -> Kworld PlusTV HD Hybrid 330 (em2883) [eb1a:a316] |
59 | 58 -> Compro VideoMate ForYou/Stereo (em2820/em2840) [185b:2041] | 59 | 58 -> Compro VideoMate ForYou/Stereo (em2820/em2840) [185b:2041] |
60 | 59 -> Pinnacle PCTV HD Mini (em2874) [2304:023f] | 60 | 59 -> Pinnacle PCTV HD Mini (em2874) [2304:023f] |
61 | 60 -> Hauppauge WinTV HVR 850 (em2883) [2040:651f] | ||
diff --git a/drivers/media/video/em28xx/em28xx-cards.c b/drivers/media/video/em28xx/em28xx-cards.c index 01757c018b5e..745268e11255 100644 --- a/drivers/media/video/em28xx/em28xx-cards.c +++ b/drivers/media/video/em28xx/em28xx-cards.c | |||
@@ -650,6 +650,32 @@ struct em28xx_board em28xx_boards[] = { | |||
650 | .gpio = hauppauge_wintv_hvr_900_analog, | 650 | .gpio = hauppauge_wintv_hvr_900_analog, |
651 | } }, | 651 | } }, |
652 | }, | 652 | }, |
653 | [EM2883_BOARD_HAUPPAUGE_WINTV_HVR_850] = { | ||
654 | .name = "Hauppauge WinTV HVR 850", | ||
655 | .tuner_type = TUNER_XC2028, | ||
656 | .tuner_gpio = default_tuner_gpio, | ||
657 | .mts_firmware = 1, | ||
658 | .has_dvb = 1, | ||
659 | .dvb_gpio = hauppauge_wintv_hvr_900_digital, | ||
660 | .ir_codes = ir_codes_hauppauge_new, | ||
661 | .decoder = EM28XX_TVP5150, | ||
662 | .input = { { | ||
663 | .type = EM28XX_VMUX_TELEVISION, | ||
664 | .vmux = TVP5150_COMPOSITE0, | ||
665 | .amux = EM28XX_AMUX_VIDEO, | ||
666 | .gpio = hauppauge_wintv_hvr_900_analog, | ||
667 | }, { | ||
668 | .type = EM28XX_VMUX_COMPOSITE1, | ||
669 | .vmux = TVP5150_COMPOSITE1, | ||
670 | .amux = EM28XX_AMUX_LINE_IN, | ||
671 | .gpio = hauppauge_wintv_hvr_900_analog, | ||
672 | }, { | ||
673 | .type = EM28XX_VMUX_SVIDEO, | ||
674 | .vmux = TVP5150_SVIDEO, | ||
675 | .amux = EM28XX_AMUX_LINE_IN, | ||
676 | .gpio = hauppauge_wintv_hvr_900_analog, | ||
677 | } }, | ||
678 | }, | ||
653 | [EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950] = { | 679 | [EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950] = { |
654 | .name = "Hauppauge WinTV HVR 950", | 680 | .name = "Hauppauge WinTV HVR 950", |
655 | .tuner_type = TUNER_XC2028, | 681 | .tuner_type = TUNER_XC2028, |
@@ -1281,8 +1307,8 @@ struct usb_device_id em28xx_id_table [] = { | |||
1281 | .driver_info = EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950 }, | 1307 | .driver_info = EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950 }, |
1282 | { USB_DEVICE(0x2040, 0x651b), /* RP HVR-950 */ | 1308 | { USB_DEVICE(0x2040, 0x651b), /* RP HVR-950 */ |
1283 | .driver_info = EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950 }, | 1309 | .driver_info = EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950 }, |
1284 | { USB_DEVICE(0x2040, 0x651f), /* HCW HVR-850 */ | 1310 | { USB_DEVICE(0x2040, 0x651f), |
1285 | .driver_info = EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950 }, | 1311 | .driver_info = EM2883_BOARD_HAUPPAUGE_WINTV_HVR_850 }, |
1286 | { USB_DEVICE(0x0438, 0xb002), | 1312 | { USB_DEVICE(0x0438, 0xb002), |
1287 | .driver_info = EM2880_BOARD_AMD_ATI_TV_WONDER_HD_600 }, | 1313 | .driver_info = EM2880_BOARD_AMD_ATI_TV_WONDER_HD_600 }, |
1288 | { USB_DEVICE(0x2001, 0xf112), | 1314 | { USB_DEVICE(0x2001, 0xf112), |
@@ -1502,6 +1528,7 @@ static void em28xx_setup_xc3028(struct em28xx *dev, struct xc2028_ctrl *ctl) | |||
1502 | ctl->demod = XC3028_FE_DEFAULT; | 1528 | ctl->demod = XC3028_FE_DEFAULT; |
1503 | ctl->fname = XC3028L_DEFAULT_FIRMWARE; | 1529 | ctl->fname = XC3028L_DEFAULT_FIRMWARE; |
1504 | break; | 1530 | break; |
1531 | case EM2883_BOARD_HAUPPAUGE_WINTV_HVR_850: | ||
1505 | case EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950: | 1532 | case EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950: |
1506 | case EM2880_BOARD_PINNACLE_PCTV_HD_PRO: | 1533 | case EM2880_BOARD_PINNACLE_PCTV_HD_PRO: |
1507 | /* FIXME: Better to specify the needed IF */ | 1534 | /* FIXME: Better to specify the needed IF */ |
@@ -1686,6 +1713,7 @@ void em28xx_card_setup(struct em28xx *dev) | |||
1686 | case EM2820_BOARD_HAUPPAUGE_WINTV_USB_2: | 1713 | case EM2820_BOARD_HAUPPAUGE_WINTV_USB_2: |
1687 | case EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900: | 1714 | case EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900: |
1688 | case EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900_R2: | 1715 | case EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900_R2: |
1716 | case EM2883_BOARD_HAUPPAUGE_WINTV_HVR_850: | ||
1689 | case EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950: | 1717 | case EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950: |
1690 | { | 1718 | { |
1691 | struct tveeprom tv; | 1719 | struct tveeprom tv; |
diff --git a/drivers/media/video/em28xx/em28xx-dvb.c b/drivers/media/video/em28xx/em28xx-dvb.c index 211156d458f0..967bf6859fce 100644 --- a/drivers/media/video/em28xx/em28xx-dvb.c +++ b/drivers/media/video/em28xx/em28xx-dvb.c | |||
@@ -409,6 +409,7 @@ static int dvb_init(struct em28xx *dev) | |||
409 | em28xx_set_mode(dev, EM28XX_DIGITAL_MODE); | 409 | em28xx_set_mode(dev, EM28XX_DIGITAL_MODE); |
410 | /* init frontend */ | 410 | /* init frontend */ |
411 | switch (dev->model) { | 411 | switch (dev->model) { |
412 | case EM2883_BOARD_HAUPPAUGE_WINTV_HVR_850: | ||
412 | case EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950: | 413 | case EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950: |
413 | case EM2880_BOARD_PINNACLE_PCTV_HD_PRO: | 414 | case EM2880_BOARD_PINNACLE_PCTV_HD_PRO: |
414 | case EM2880_BOARD_AMD_ATI_TV_WONDER_HD_600: | 415 | case EM2880_BOARD_AMD_ATI_TV_WONDER_HD_600: |
diff --git a/drivers/media/video/em28xx/em28xx.h b/drivers/media/video/em28xx/em28xx.h index 64459a160762..54802d2d1bc5 100644 --- a/drivers/media/video/em28xx/em28xx.h +++ b/drivers/media/video/em28xx/em28xx.h | |||
@@ -98,6 +98,7 @@ | |||
98 | #define EM2883_BOARD_KWORLD_HYBRID_A316 57 | 98 | #define EM2883_BOARD_KWORLD_HYBRID_A316 57 |
99 | #define EM2820_BOARD_COMPRO_VIDEOMATE_FORYOU 58 | 99 | #define EM2820_BOARD_COMPRO_VIDEOMATE_FORYOU 58 |
100 | #define EM2874_BOARD_PINNACLE_PCTV_80E 59 | 100 | #define EM2874_BOARD_PINNACLE_PCTV_80E 59 |
101 | #define EM2883_BOARD_HAUPPAUGE_WINTV_HVR_850 60 | ||
101 | 102 | ||
102 | /* Limits minimum and default number of buffers */ | 103 | /* Limits minimum and default number of buffers */ |
103 | #define EM28XX_MIN_BUF 4 | 104 | #define EM28XX_MIN_BUF 4 |