diff options
-rw-r--r-- | Documentation/video4linux/CARDLIST.cx88 | 1 | ||||
-rw-r--r-- | drivers/media/video/bttv-i2c.c | 10 | ||||
-rw-r--r-- | drivers/media/video/cx88/cx88-cards.c | 38 | ||||
-rw-r--r-- | drivers/media/video/cx88/cx88.h | 3 |
4 files changed, 44 insertions, 8 deletions
diff --git a/Documentation/video4linux/CARDLIST.cx88 b/Documentation/video4linux/CARDLIST.cx88 index 12e9e393868e..a1017d1a85d4 100644 --- a/Documentation/video4linux/CARDLIST.cx88 +++ b/Documentation/video4linux/CARDLIST.cx88 | |||
@@ -34,3 +34,4 @@ | |||
34 | 33 -> Kworld V-Stream Xpert DVD | 34 | 33 -> Kworld V-Stream Xpert DVD |
35 | 34 -> ATI HDTV Wonder [1002:a101] | 35 | 34 -> ATI HDTV Wonder [1002:a101] |
36 | 35 -> WinFast DTV1000-T [107d:665f] | 36 | 35 -> WinFast DTV1000-T [107d:665f] |
37 | 36 -> AVerTV 303 (M126) [1461:000a] | ||
diff --git a/drivers/media/video/bttv-i2c.c b/drivers/media/video/bttv-i2c.c index 1b3e0a769518..77619eb131f6 100644 --- a/drivers/media/video/bttv-i2c.c +++ b/drivers/media/video/bttv-i2c.c | |||
@@ -294,8 +294,8 @@ static int attach_inform(struct i2c_client *client) | |||
294 | int addr=ADDR_UNSET; | 294 | int addr=ADDR_UNSET; |
295 | 295 | ||
296 | 296 | ||
297 | if (ADDR_UNSET != bttv_tvcards[btv->c.type].tuner_addr) | 297 | if (ADDR_UNSET != bttv_tvcards[btv->c.type].tuner_addr) |
298 | addr = bttv_tvcards[btv->c.type].tuner_addr; | 298 | addr = bttv_tvcards[btv->c.type].tuner_addr; |
299 | 299 | ||
300 | 300 | ||
301 | if (bttv_debug) | 301 | if (bttv_debug) |
@@ -311,10 +311,10 @@ static int attach_inform(struct i2c_client *client) | |||
311 | if ((addr==ADDR_UNSET) || | 311 | if ((addr==ADDR_UNSET) || |
312 | (addr==client->addr)) { | 312 | (addr==client->addr)) { |
313 | 313 | ||
314 | tun_setup.mode_mask = T_ANALOG_TV | T_DIGITAL_TV | T_RADIO; | 314 | tun_setup.mode_mask = T_ANALOG_TV | T_DIGITAL_TV | T_RADIO; |
315 | tun_setup.type = btv->tuner_type; | 315 | tun_setup.type = btv->tuner_type; |
316 | tun_setup.addr = addr; | 316 | tun_setup.addr = addr; |
317 | bttv_call_i2c_clients(btv, TUNER_SET_TYPE_ADDR, &tun_setup); | 317 | bttv_call_i2c_clients(btv, TUNER_SET_TYPE_ADDR, &tun_setup); |
318 | } | 318 | } |
319 | 319 | ||
320 | } | 320 | } |
diff --git a/drivers/media/video/cx88/cx88-cards.c b/drivers/media/video/cx88/cx88-cards.c index f20984eb5538..f2268631b7c0 100644 --- a/drivers/media/video/cx88/cx88-cards.c +++ b/drivers/media/video/cx88/cx88-cards.c | |||
@@ -174,7 +174,7 @@ struct cx88_board cx88_boards[] = { | |||
174 | .gpio3 = 0x02000000, | 174 | .gpio3 = 0x02000000, |
175 | }, | 175 | }, |
176 | }, | 176 | }, |
177 | [CX88_BOARD_AVERTV_303] = { | 177 | [CX88_BOARD_AVERTV_STUDIO_303] = { |
178 | .name = "AverTV Studio 303 (M126)", | 178 | .name = "AverTV Studio 303 (M126)", |
179 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, | 179 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, |
180 | .radio_type = UNSET, | 180 | .radio_type = UNSET, |
@@ -865,6 +865,36 @@ struct cx88_board cx88_boards[] = { | |||
865 | }}, | 865 | }}, |
866 | .dvb = 1, | 866 | .dvb = 1, |
867 | }, | 867 | }, |
868 | [CX88_BOARD_AVERTV_303] = { | ||
869 | .name = "AVerTV 303 (M126)", | ||
870 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, | ||
871 | .radio_type = UNSET, | ||
872 | .tuner_addr = ADDR_UNSET, | ||
873 | .radio_addr = ADDR_UNSET, | ||
874 | .tda9887_conf = TDA9887_PRESENT, | ||
875 | .input = {{ | ||
876 | .type = CX88_VMUX_TELEVISION, | ||
877 | .vmux = 0, | ||
878 | .gpio0 = 0x00ff, | ||
879 | .gpio1 = 0xe09f, | ||
880 | .gpio2 = 0x0010, | ||
881 | .gpio3 = 0x0000, | ||
882 | },{ | ||
883 | .type = CX88_VMUX_COMPOSITE1, | ||
884 | .vmux = 1, | ||
885 | .gpio0 = 0x00ff, | ||
886 | .gpio1 = 0xe05f, | ||
887 | .gpio2 = 0x0010, | ||
888 | .gpio3 = 0x0000, | ||
889 | },{ | ||
890 | .type = CX88_VMUX_SVIDEO, | ||
891 | .vmux = 2, | ||
892 | .gpio0 = 0x00ff, | ||
893 | .gpio1 = 0xe05f, | ||
894 | .gpio2 = 0x0010, | ||
895 | .gpio3 = 0x0000, | ||
896 | }}, | ||
897 | }, | ||
868 | }; | 898 | }; |
869 | const unsigned int cx88_bcount = ARRAY_SIZE(cx88_boards); | 899 | const unsigned int cx88_bcount = ARRAY_SIZE(cx88_boards); |
870 | 900 | ||
@@ -915,7 +945,7 @@ struct cx88_subid cx88_subids[] = { | |||
915 | },{ | 945 | },{ |
916 | .subvendor = 0x1461, | 946 | .subvendor = 0x1461, |
917 | .subdevice = 0x000b, | 947 | .subdevice = 0x000b, |
918 | .card = CX88_BOARD_AVERTV_303, | 948 | .card = CX88_BOARD_AVERTV_STUDIO_303, |
919 | },{ | 949 | },{ |
920 | .subvendor = 0x1462, | 950 | .subvendor = 0x1462, |
921 | .subdevice = 0x8606, | 951 | .subdevice = 0x8606, |
@@ -1008,6 +1038,10 @@ struct cx88_subid cx88_subids[] = { | |||
1008 | .subvendor = 0x107d, | 1038 | .subvendor = 0x107d, |
1009 | .subdevice = 0x665f, | 1039 | .subdevice = 0x665f, |
1010 | .card = CX88_BOARD_WINFAST_DTV1000, | 1040 | .card = CX88_BOARD_WINFAST_DTV1000, |
1041 | },{ | ||
1042 | .subvendor = 0x1461, | ||
1043 | .subdevice = 0x000a, | ||
1044 | .card = CX88_BOARD_AVERTV_303, | ||
1011 | }, | 1045 | }, |
1012 | }; | 1046 | }; |
1013 | const unsigned int cx88_idcount = ARRAY_SIZE(cx88_subids); | 1047 | const unsigned int cx88_idcount = ARRAY_SIZE(cx88_subids); |
diff --git a/drivers/media/video/cx88/cx88.h b/drivers/media/video/cx88/cx88.h index baeae1ac992c..b19d3a9e2298 100644 --- a/drivers/media/video/cx88/cx88.h +++ b/drivers/media/video/cx88/cx88.h | |||
@@ -148,7 +148,7 @@ extern struct sram_channel cx88_sram_channels[]; | |||
148 | #define CX88_BOARD_PIXELVIEW 3 | 148 | #define CX88_BOARD_PIXELVIEW 3 |
149 | #define CX88_BOARD_ATI_WONDER_PRO 4 | 149 | #define CX88_BOARD_ATI_WONDER_PRO 4 |
150 | #define CX88_BOARD_WINFAST2000XP_EXPERT 5 | 150 | #define CX88_BOARD_WINFAST2000XP_EXPERT 5 |
151 | #define CX88_BOARD_AVERTV_303 6 | 151 | #define CX88_BOARD_AVERTV_STUDIO_303 6 |
152 | #define CX88_BOARD_MSI_TVANYWHERE_MASTER 7 | 152 | #define CX88_BOARD_MSI_TVANYWHERE_MASTER 7 |
153 | #define CX88_BOARD_WINFAST_DV2000 8 | 153 | #define CX88_BOARD_WINFAST_DV2000 8 |
154 | #define CX88_BOARD_LEADTEK_PVR2000 9 | 154 | #define CX88_BOARD_LEADTEK_PVR2000 9 |
@@ -178,6 +178,7 @@ extern struct sram_channel cx88_sram_channels[]; | |||
178 | #define CX88_BOARD_KWORLD_VSTREAM_EXPERT_DVD 33 | 178 | #define CX88_BOARD_KWORLD_VSTREAM_EXPERT_DVD 33 |
179 | #define CX88_BOARD_ATI_HDTVWONDER 34 | 179 | #define CX88_BOARD_ATI_HDTVWONDER 34 |
180 | #define CX88_BOARD_WINFAST_DTV1000 35 | 180 | #define CX88_BOARD_WINFAST_DTV1000 35 |
181 | #define CX88_BOARD_AVERTV_303 36 | ||
181 | 182 | ||
182 | enum cx88_itype { | 183 | enum cx88_itype { |
183 | CX88_VMUX_COMPOSITE1 = 1, | 184 | CX88_VMUX_COMPOSITE1 = 1, |