diff options
author | Igor M. Liplianin <liplianin@me.by> | 2008-11-09 13:25:31 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-12-29 14:53:28 -0500 |
commit | 4b29631db33292d416dc395c56122ea865e7635c (patch) | |
tree | 1e0e6b034148e2d78c73f4d3e85a242884707dbe /drivers/media/video/cx88 | |
parent | 1f6340bd431921f9b6dc995973eb065d6c14f024 (diff) |
V4L/DVB (9533): cx88: Add support for TurboSight TBS8910 DVB-S PCI card
The card based on stv0299 or stv0288 demodulators.
Signed-off-by: Igor M. Liplianin <liplianin@me.by>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/cx88')
-rw-r--r-- | drivers/media/video/cx88/cx88-cards.c | 34 | ||||
-rw-r--r-- | drivers/media/video/cx88/cx88-dvb.c | 2 | ||||
-rw-r--r-- | drivers/media/video/cx88/cx88.h | 2 |
3 files changed, 38 insertions, 0 deletions
diff --git a/drivers/media/video/cx88/cx88-cards.c b/drivers/media/video/cx88/cx88-cards.c index 3ead9498c4d9..bbe5b3343ac3 100644 --- a/drivers/media/video/cx88/cx88-cards.c +++ b/drivers/media/video/cx88/cx88-cards.c | |||
@@ -1847,6 +1847,18 @@ static const struct cx88_board cx88_boards[] = { | |||
1847 | } }, | 1847 | } }, |
1848 | .mpeg = CX88_MPEG_DVB, | 1848 | .mpeg = CX88_MPEG_DVB, |
1849 | }, | 1849 | }, |
1850 | [CX88_BOARD_TBS_8910] = { | ||
1851 | .name = "TBS 8910 DVB-S", | ||
1852 | .tuner_type = UNSET, | ||
1853 | .radio_type = UNSET, | ||
1854 | .tuner_addr = ADDR_UNSET, | ||
1855 | .radio_addr = ADDR_UNSET, | ||
1856 | .input = {{ | ||
1857 | .type = CX88_VMUX_DVB, | ||
1858 | .vmux = 0, | ||
1859 | } }, | ||
1860 | .mpeg = CX88_MPEG_DVB, | ||
1861 | }, | ||
1850 | [CX88_BOARD_TBS_8920] = { | 1862 | [CX88_BOARD_TBS_8920] = { |
1851 | .name = "TBS 8920 DVB-S/S2", | 1863 | .name = "TBS 8920 DVB-S/S2", |
1852 | .tuner_type = TUNER_ABSENT, | 1864 | .tuner_type = TUNER_ABSENT, |
@@ -1871,6 +1883,18 @@ static const struct cx88_board cx88_boards[] = { | |||
1871 | } }, | 1883 | } }, |
1872 | .mpeg = CX88_MPEG_DVB, | 1884 | .mpeg = CX88_MPEG_DVB, |
1873 | }, | 1885 | }, |
1886 | [CX88_BOARD_SATTRADE_ST4200] = { | ||
1887 | .name = "SATTRADE ST4200 DVB-S/S2", | ||
1888 | .tuner_type = UNSET, | ||
1889 | .radio_type = UNSET, | ||
1890 | .tuner_addr = ADDR_UNSET, | ||
1891 | .radio_addr = ADDR_UNSET, | ||
1892 | .input = {{ | ||
1893 | .type = CX88_VMUX_DVB, | ||
1894 | .vmux = 0, | ||
1895 | } }, | ||
1896 | .mpeg = CX88_MPEG_DVB, | ||
1897 | }, | ||
1874 | }; | 1898 | }; |
1875 | 1899 | ||
1876 | /* ------------------------------------------------------------------ */ | 1900 | /* ------------------------------------------------------------------ */ |
@@ -2261,6 +2285,10 @@ static const struct cx88_subid cx88_subids[] = { | |||
2261 | .subdevice = 0x2011, | 2285 | .subdevice = 0x2011, |
2262 | .card = CX88_BOARD_OMICOM_SS4_PCI, | 2286 | .card = CX88_BOARD_OMICOM_SS4_PCI, |
2263 | }, { | 2287 | }, { |
2288 | .subvendor = 0x8910, | ||
2289 | .subdevice = 0x8888, | ||
2290 | .card = CX88_BOARD_TBS_8910, | ||
2291 | }, { | ||
2264 | .subvendor = 0x8920, | 2292 | .subvendor = 0x8920, |
2265 | .subdevice = 0x8888, | 2293 | .subdevice = 0x8888, |
2266 | .card = CX88_BOARD_TBS_8920, | 2294 | .card = CX88_BOARD_TBS_8920, |
@@ -2268,6 +2296,10 @@ static const struct cx88_subid cx88_subids[] = { | |||
2268 | .subvendor = 0xB033, | 2296 | .subvendor = 0xB033, |
2269 | .subdevice = 0x3033, | 2297 | .subdevice = 0x3033, |
2270 | .card = CX88_BOARD_PROF_7300, | 2298 | .card = CX88_BOARD_PROF_7300, |
2299 | }, { | ||
2300 | .subvendor = 0xb200, | ||
2301 | .subdevice = 0x4200, | ||
2302 | .card = CX88_BOARD_SATTRADE_ST4200, | ||
2271 | }, | 2303 | }, |
2272 | }; | 2304 | }; |
2273 | 2305 | ||
@@ -2878,8 +2910,10 @@ static void cx88_card_setup(struct cx88_core *core) | |||
2878 | case CX88_BOARD_TEVII_S420: | 2910 | case CX88_BOARD_TEVII_S420: |
2879 | case CX88_BOARD_TEVII_S460: | 2911 | case CX88_BOARD_TEVII_S460: |
2880 | case CX88_BOARD_OMICOM_SS4_PCI: | 2912 | case CX88_BOARD_OMICOM_SS4_PCI: |
2913 | case CX88_BOARD_TBS_8910: | ||
2881 | case CX88_BOARD_TBS_8920: | 2914 | case CX88_BOARD_TBS_8920: |
2882 | case CX88_BOARD_PROF_7300: | 2915 | case CX88_BOARD_PROF_7300: |
2916 | case CX88_BOARD_SATTRADE_ST4200: | ||
2883 | cx_write(MO_SRST_IO, 0); | 2917 | cx_write(MO_SRST_IO, 0); |
2884 | msleep(100); | 2918 | msleep(100); |
2885 | cx_write(MO_SRST_IO, 1); | 2919 | cx_write(MO_SRST_IO, 1); |
diff --git a/drivers/media/video/cx88/cx88-dvb.c b/drivers/media/video/cx88/cx88-dvb.c index 8378d46dc80d..bab28112e40e 100644 --- a/drivers/media/video/cx88/cx88-dvb.c +++ b/drivers/media/video/cx88/cx88-dvb.c | |||
@@ -1042,6 +1042,7 @@ static int dvb_register(struct cx8802_dev *dev) | |||
1042 | 0x08, ISL6421_DCL, 0x00); | 1042 | 0x08, ISL6421_DCL, 0x00); |
1043 | } | 1043 | } |
1044 | break; | 1044 | break; |
1045 | case CX88_BOARD_TBS_8910: | ||
1045 | case CX88_BOARD_TEVII_S420: | 1046 | case CX88_BOARD_TEVII_S420: |
1046 | fe0->dvb.frontend = dvb_attach(stv0299_attach, | 1047 | fe0->dvb.frontend = dvb_attach(stv0299_attach, |
1047 | &tevii_tuner_sharp_config, | 1048 | &tevii_tuner_sharp_config, |
@@ -1078,6 +1079,7 @@ static int dvb_register(struct cx8802_dev *dev) | |||
1078 | case CX88_BOARD_OMICOM_SS4_PCI: | 1079 | case CX88_BOARD_OMICOM_SS4_PCI: |
1079 | case CX88_BOARD_TBS_8920: | 1080 | case CX88_BOARD_TBS_8920: |
1080 | case CX88_BOARD_PROF_7300: | 1081 | case CX88_BOARD_PROF_7300: |
1082 | case CX88_BOARD_SATTRADE_ST4200: | ||
1081 | fe0->dvb.frontend = dvb_attach(cx24116_attach, | 1083 | fe0->dvb.frontend = dvb_attach(cx24116_attach, |
1082 | &hauppauge_hvr4000_config, | 1084 | &hauppauge_hvr4000_config, |
1083 | &core->i2c_adap); | 1085 | &core->i2c_adap); |
diff --git a/drivers/media/video/cx88/cx88.h b/drivers/media/video/cx88/cx88.h index a11599fa1d86..ae1b89a88bcd 100644 --- a/drivers/media/video/cx88/cx88.h +++ b/drivers/media/video/cx88/cx88.h | |||
@@ -228,6 +228,8 @@ extern struct sram_channel cx88_sram_channels[]; | |||
228 | #define CX88_BOARD_TEVII_S420 73 | 228 | #define CX88_BOARD_TEVII_S420 73 |
229 | #define CX88_BOARD_PROLINK_PV_GLOBAL_XTREME 74 | 229 | #define CX88_BOARD_PROLINK_PV_GLOBAL_XTREME 74 |
230 | #define CX88_BOARD_PROF_7300 75 | 230 | #define CX88_BOARD_PROF_7300 75 |
231 | #define CX88_BOARD_SATTRADE_ST4200 76 | ||
232 | #define CX88_BOARD_TBS_8910 77 | ||
231 | 233 | ||
232 | enum cx88_itype { | 234 | enum cx88_itype { |
233 | CX88_VMUX_COMPOSITE1 = 1, | 235 | CX88_VMUX_COMPOSITE1 = 1, |