diff options
Diffstat (limited to 'drivers/media/video/em28xx/em28xx-cards.c')
-rw-r--r-- | drivers/media/video/em28xx/em28xx-cards.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/drivers/media/video/em28xx/em28xx-cards.c b/drivers/media/video/em28xx/em28xx-cards.c index c892a1e4ad85..cc0b9a387917 100644 --- a/drivers/media/video/em28xx/em28xx-cards.c +++ b/drivers/media/video/em28xx/em28xx-cards.c | |||
@@ -300,6 +300,23 @@ static struct em28xx_reg_seq pctv_290e[] = { | |||
300 | {-1, -1, -1, -1}, | 300 | {-1, -1, -1, -1}, |
301 | }; | 301 | }; |
302 | 302 | ||
303 | #if 0 | ||
304 | static struct em28xx_reg_seq terratec_h5_gpio[] = { | ||
305 | {EM28XX_R08_GPIO, 0xff, 0xff, 10}, | ||
306 | {EM2874_R80_GPIO, 0xf6, 0xff, 100}, | ||
307 | {EM2874_R80_GPIO, 0xf2, 0xff, 50}, | ||
308 | {EM2874_R80_GPIO, 0xf6, 0xff, 50}, | ||
309 | { -1, -1, -1, -1}, | ||
310 | }; | ||
311 | |||
312 | static struct em28xx_reg_seq terratec_h5_digital[] = { | ||
313 | {EM2874_R80_GPIO, 0xf6, 0xff, 10}, | ||
314 | {EM2874_R80_GPIO, 0xe6, 0xff, 100}, | ||
315 | {EM2874_R80_GPIO, 0xa6, 0xff, 10}, | ||
316 | { -1, -1, -1, -1}, | ||
317 | }; | ||
318 | #endif | ||
319 | |||
303 | /* | 320 | /* |
304 | * Board definitions | 321 | * Board definitions |
305 | */ | 322 | */ |
@@ -843,6 +860,19 @@ struct em28xx_board em28xx_boards[] = { | |||
843 | .gpio = terratec_cinergy_USB_XS_FR_analog, | 860 | .gpio = terratec_cinergy_USB_XS_FR_analog, |
844 | } }, | 861 | } }, |
845 | }, | 862 | }, |
863 | [EM2884_BOARD_TERRATEC_H5] = { | ||
864 | .name = "Terratec Cinergy H5", | ||
865 | .has_dvb = 1, | ||
866 | #if 0 | ||
867 | .tuner_type = TUNER_PHILIPS_TDA8290, | ||
868 | .tuner_addr = 0x41, | ||
869 | .dvb_gpio = terratec_h5_digital, /* FIXME: probably wrong */ | ||
870 | .tuner_gpio = terratec_h5_gpio, | ||
871 | #endif | ||
872 | .i2c_speed = EM2874_I2C_SECONDARY_BUS_SELECT | | ||
873 | EM28XX_I2C_CLK_WAIT_ENABLE | | ||
874 | EM28XX_I2C_FREQ_400_KHZ, | ||
875 | }, | ||
846 | [EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900] = { | 876 | [EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900] = { |
847 | .name = "Hauppauge WinTV HVR 900", | 877 | .name = "Hauppauge WinTV HVR 900", |
848 | .tda9887_conf = TDA9887_PRESENT, | 878 | .tda9887_conf = TDA9887_PRESENT, |
@@ -1855,6 +1885,8 @@ struct usb_device_id em28xx_id_table[] = { | |||
1855 | .driver_info = EM2882_BOARD_TERRATEC_HYBRID_XS }, | 1885 | .driver_info = EM2882_BOARD_TERRATEC_HYBRID_XS }, |
1856 | { USB_DEVICE(0x0ccd, 0x0043), | 1886 | { USB_DEVICE(0x0ccd, 0x0043), |
1857 | .driver_info = EM2870_BOARD_TERRATEC_XS }, | 1887 | .driver_info = EM2870_BOARD_TERRATEC_XS }, |
1888 | { USB_DEVICE(0x0ccd, 0x10a2), | ||
1889 | .driver_info = EM2884_BOARD_TERRATEC_H5 }, | ||
1858 | { USB_DEVICE(0x0ccd, 0x0047), | 1890 | { USB_DEVICE(0x0ccd, 0x0047), |
1859 | .driver_info = EM2880_BOARD_TERRATEC_PRODIGY_XS }, | 1891 | .driver_info = EM2880_BOARD_TERRATEC_PRODIGY_XS }, |
1860 | { USB_DEVICE(0x0ccd, 0x0084), | 1892 | { USB_DEVICE(0x0ccd, 0x0084), |
@@ -2840,6 +2872,11 @@ static int em28xx_init_dev(struct em28xx **devhandle, struct usb_device *udev, | |||
2840 | em28xx_info("chip ID is em2882/em2883\n"); | 2872 | em28xx_info("chip ID is em2882/em2883\n"); |
2841 | dev->wait_after_write = 0; | 2873 | dev->wait_after_write = 0; |
2842 | break; | 2874 | break; |
2875 | case CHIP_ID_EM2884: | ||
2876 | em28xx_info("chip ID is em2884\n"); | ||
2877 | dev->reg_gpio_num = EM2874_R80_GPIO; | ||
2878 | dev->wait_after_write = 0; | ||
2879 | break; | ||
2843 | default: | 2880 | default: |
2844 | em28xx_info("em28xx chip ID = %d\n", dev->chip_id); | 2881 | em28xx_info("em28xx chip ID = %d\n", dev->chip_id); |
2845 | } | 2882 | } |