diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-11-25 07:10:25 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-12-29 14:53:41 -0500 |
commit | d4d889e329bd0837598b3ef611806421754e9b83 (patch) | |
tree | 9df5f74567237f890349d7b2a2feb15fe5f5f22e | |
parent | a2070c665459ac37a36bebae5e97bb4a2568990e (diff) |
V4L/DVB (9751): em28xx: card description cleanups
Remove unused em28xx_board.vchannels and em28xx.video_channels.
Also, .is_em2800 = 0 is not needed, as all data is zeroed by kernel loader.
The table also included a notice that svideo weren't test on Hauppauge
USB2. Remove this notice, since this input also works properly.
Also, it does some whitespace cleanups.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r-- | drivers/media/video/em28xx/em28xx-cards.c | 181 | ||||
-rw-r--r-- | drivers/media/video/em28xx/em28xx.h | 2 |
2 files changed, 59 insertions, 124 deletions
diff --git a/drivers/media/video/em28xx/em28xx-cards.c b/drivers/media/video/em28xx/em28xx-cards.c index 729c76c59ec5..0d489cad2d56 100644 --- a/drivers/media/video/em28xx/em28xx-cards.c +++ b/drivers/media/video/em28xx/em28xx-cards.c | |||
@@ -54,7 +54,6 @@ struct em28xx_hash_table { | |||
54 | struct em28xx_board em28xx_boards[] = { | 54 | struct em28xx_board em28xx_boards[] = { |
55 | [EM2750_BOARD_UNKNOWN] = { | 55 | [EM2750_BOARD_UNKNOWN] = { |
56 | .name = "Unknown EM2750/EM2751 webcam grabber", | 56 | .name = "Unknown EM2750/EM2751 webcam grabber", |
57 | .vchannels = 1, | ||
58 | .xclk = EM28XX_XCLK_FREQUENCY_48MHZ, | 57 | .xclk = EM28XX_XCLK_FREQUENCY_48MHZ, |
59 | .input = { { | 58 | .input = { { |
60 | .type = EM28XX_VMUX_COMPOSITE1, | 59 | .type = EM28XX_VMUX_COMPOSITE1, |
@@ -65,10 +64,9 @@ struct em28xx_board em28xx_boards[] = { | |||
65 | [EM2800_BOARD_UNKNOWN] = { | 64 | [EM2800_BOARD_UNKNOWN] = { |
66 | .name = "Unknown EM2800 video grabber", | 65 | .name = "Unknown EM2800 video grabber", |
67 | .is_em2800 = 1, | 66 | .is_em2800 = 1, |
68 | .vchannels = 2, | ||
69 | .tda9887_conf = TDA9887_PRESENT, | 67 | .tda9887_conf = TDA9887_PRESENT, |
70 | .decoder = EM28XX_SAA7113, | 68 | .decoder = EM28XX_SAA7113, |
71 | .input = { { | 69 | .input = { { |
72 | .type = EM28XX_VMUX_COMPOSITE1, | 70 | .type = EM28XX_VMUX_COMPOSITE1, |
73 | .vmux = SAA7115_COMPOSITE0, | 71 | .vmux = SAA7115_COMPOSITE0, |
74 | .amux = EM28XX_AMUX_LINE_IN, | 72 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -86,7 +84,6 @@ struct em28xx_board em28xx_boards[] = { | |||
86 | /* Beijing Huaqi Information Digital Technology Co., Ltd */ | 84 | /* Beijing Huaqi Information Digital Technology Co., Ltd */ |
87 | .name = "Huaqi DLCW-130", | 85 | .name = "Huaqi DLCW-130", |
88 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 86 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
89 | .vchannels = 1, | ||
90 | .xclk = EM28XX_XCLK_FREQUENCY_48MHZ, | 87 | .xclk = EM28XX_XCLK_FREQUENCY_48MHZ, |
91 | .input = { { | 88 | .input = { { |
92 | .type = EM28XX_VMUX_COMPOSITE1, | 89 | .type = EM28XX_VMUX_COMPOSITE1, |
@@ -96,12 +93,10 @@ struct em28xx_board em28xx_boards[] = { | |||
96 | }, | 93 | }, |
97 | [EM2820_BOARD_KWORLD_PVRTV2800RF] = { | 94 | [EM2820_BOARD_KWORLD_PVRTV2800RF] = { |
98 | .name = "Kworld PVR TV 2800 RF", | 95 | .name = "Kworld PVR TV 2800 RF", |
99 | .is_em2800 = 0, | ||
100 | .vchannels = 2, | ||
101 | .tuner_type = TUNER_TEMIC_PAL, | 96 | .tuner_type = TUNER_TEMIC_PAL, |
102 | .tda9887_conf = TDA9887_PRESENT, | 97 | .tda9887_conf = TDA9887_PRESENT, |
103 | .decoder = EM28XX_SAA7113, | 98 | .decoder = EM28XX_SAA7113, |
104 | .input = { { | 99 | .input = { { |
105 | .type = EM28XX_VMUX_COMPOSITE1, | 100 | .type = EM28XX_VMUX_COMPOSITE1, |
106 | .vmux = SAA7115_COMPOSITE0, | 101 | .vmux = SAA7115_COMPOSITE0, |
107 | .amux = EM28XX_AMUX_LINE_IN, | 102 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -113,11 +108,10 @@ struct em28xx_board em28xx_boards[] = { | |||
113 | }, | 108 | }, |
114 | [EM2820_BOARD_TERRATEC_CINERGY_250] = { | 109 | [EM2820_BOARD_TERRATEC_CINERGY_250] = { |
115 | .name = "Terratec Cinergy 250 USB", | 110 | .name = "Terratec Cinergy 250 USB", |
116 | .vchannels = 3, | ||
117 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, | 111 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, |
118 | .tda9887_conf = TDA9887_PRESENT, | 112 | .tda9887_conf = TDA9887_PRESENT, |
119 | .decoder = EM28XX_SAA7113, | 113 | .decoder = EM28XX_SAA7113, |
120 | .input = { { | 114 | .input = { { |
121 | .type = EM28XX_VMUX_TELEVISION, | 115 | .type = EM28XX_VMUX_TELEVISION, |
122 | .vmux = SAA7115_COMPOSITE2, | 116 | .vmux = SAA7115_COMPOSITE2, |
123 | .amux = EM28XX_AMUX_LINE_IN, | 117 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -133,11 +127,10 @@ struct em28xx_board em28xx_boards[] = { | |||
133 | }, | 127 | }, |
134 | [EM2820_BOARD_PINNACLE_USB_2] = { | 128 | [EM2820_BOARD_PINNACLE_USB_2] = { |
135 | .name = "Pinnacle PCTV USB 2", | 129 | .name = "Pinnacle PCTV USB 2", |
136 | .vchannels = 3, | ||
137 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, | 130 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, |
138 | .tda9887_conf = TDA9887_PRESENT, | 131 | .tda9887_conf = TDA9887_PRESENT, |
139 | .decoder = EM28XX_SAA7113, | 132 | .decoder = EM28XX_SAA7113, |
140 | .input = { { | 133 | .input = { { |
141 | .type = EM28XX_VMUX_TELEVISION, | 134 | .type = EM28XX_VMUX_TELEVISION, |
142 | .vmux = SAA7115_COMPOSITE2, | 135 | .vmux = SAA7115_COMPOSITE2, |
143 | .amux = EM28XX_AMUX_VIDEO, | 136 | .amux = EM28XX_AMUX_VIDEO, |
@@ -153,15 +146,13 @@ struct em28xx_board em28xx_boards[] = { | |||
153 | }, | 146 | }, |
154 | [EM2820_BOARD_HAUPPAUGE_WINTV_USB_2] = { | 147 | [EM2820_BOARD_HAUPPAUGE_WINTV_USB_2] = { |
155 | .name = "Hauppauge WinTV USB 2", | 148 | .name = "Hauppauge WinTV USB 2", |
156 | .vchannels = 3, | ||
157 | .tuner_type = TUNER_PHILIPS_FM1236_MK3, | 149 | .tuner_type = TUNER_PHILIPS_FM1236_MK3, |
158 | .tda9887_conf = TDA9887_PRESENT | | 150 | .tda9887_conf = TDA9887_PRESENT | |
159 | TDA9887_PORT1_ACTIVE| | 151 | TDA9887_PORT1_ACTIVE| |
160 | TDA9887_PORT2_ACTIVE, | 152 | TDA9887_PORT2_ACTIVE, |
161 | .decoder = EM28XX_TVP5150, | 153 | .decoder = EM28XX_TVP5150, |
162 | .has_msp34xx = 1, | 154 | .has_msp34xx = 1, |
163 | /*FIXME: S-Video not tested */ | 155 | .input = { { |
164 | .input = { { | ||
165 | .type = EM28XX_VMUX_TELEVISION, | 156 | .type = EM28XX_VMUX_TELEVISION, |
166 | .vmux = TVP5150_COMPOSITE0, | 157 | .vmux = TVP5150_COMPOSITE0, |
167 | .amux = MSP_INPUT_DEFAULT, | 158 | .amux = MSP_INPUT_DEFAULT, |
@@ -175,12 +166,10 @@ struct em28xx_board em28xx_boards[] = { | |||
175 | [EM2820_BOARD_DLINK_USB_TV] = { | 166 | [EM2820_BOARD_DLINK_USB_TV] = { |
176 | .name = "D-Link DUB-T210 TV Tuner", | 167 | .name = "D-Link DUB-T210 TV Tuner", |
177 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 168 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
178 | .vchannels = 3, | ||
179 | .is_em2800 = 0, | ||
180 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, | 169 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, |
181 | .tda9887_conf = TDA9887_PRESENT, | 170 | .tda9887_conf = TDA9887_PRESENT, |
182 | .decoder = EM28XX_SAA7113, | 171 | .decoder = EM28XX_SAA7113, |
183 | .input = { { | 172 | .input = { { |
184 | .type = EM28XX_VMUX_TELEVISION, | 173 | .type = EM28XX_VMUX_TELEVISION, |
185 | .vmux = SAA7115_COMPOSITE2, | 174 | .vmux = SAA7115_COMPOSITE2, |
186 | .amux = EM28XX_AMUX_LINE_IN, | 175 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -197,7 +186,6 @@ struct em28xx_board em28xx_boards[] = { | |||
197 | [EM2820_BOARD_HERCULES_SMART_TV_USB2] = { | 186 | [EM2820_BOARD_HERCULES_SMART_TV_USB2] = { |
198 | .name = "Hercules Smart TV USB 2.0", | 187 | .name = "Hercules Smart TV USB 2.0", |
199 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 188 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
200 | .vchannels = 3, | ||
201 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, | 189 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, |
202 | .tda9887_conf = TDA9887_PRESENT, | 190 | .tda9887_conf = TDA9887_PRESENT, |
203 | .decoder = EM28XX_SAA7113, | 191 | .decoder = EM28XX_SAA7113, |
@@ -218,12 +206,10 @@ struct em28xx_board em28xx_boards[] = { | |||
218 | [EM2820_BOARD_PINNACLE_USB_2_FM1216ME] = { | 206 | [EM2820_BOARD_PINNACLE_USB_2_FM1216ME] = { |
219 | .name = "Pinnacle PCTV USB 2 (Philips FM1216ME)", | 207 | .name = "Pinnacle PCTV USB 2 (Philips FM1216ME)", |
220 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 208 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
221 | .vchannels = 3, | ||
222 | .is_em2800 = 0, | ||
223 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, | 209 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, |
224 | .tda9887_conf = TDA9887_PRESENT, | 210 | .tda9887_conf = TDA9887_PRESENT, |
225 | .decoder = EM28XX_SAA7113, | 211 | .decoder = EM28XX_SAA7113, |
226 | .input = { { | 212 | .input = { { |
227 | .type = EM28XX_VMUX_TELEVISION, | 213 | .type = EM28XX_VMUX_TELEVISION, |
228 | .vmux = SAA7115_COMPOSITE2, | 214 | .vmux = SAA7115_COMPOSITE2, |
229 | .amux = EM28XX_AMUX_VIDEO, | 215 | .amux = EM28XX_AMUX_VIDEO, |
@@ -240,11 +226,10 @@ struct em28xx_board em28xx_boards[] = { | |||
240 | [EM2820_BOARD_GADMEI_UTV310] = { | 226 | [EM2820_BOARD_GADMEI_UTV310] = { |
241 | .name = "Gadmei UTV310", | 227 | .name = "Gadmei UTV310", |
242 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 228 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
243 | .vchannels = 3, | ||
244 | .tuner_type = TUNER_TNF_5335MF, | 229 | .tuner_type = TUNER_TNF_5335MF, |
245 | .tda9887_conf = TDA9887_PRESENT, | 230 | .tda9887_conf = TDA9887_PRESENT, |
246 | .decoder = EM28XX_SAA7113, | 231 | .decoder = EM28XX_SAA7113, |
247 | .input = { { | 232 | .input = { { |
248 | .type = EM28XX_VMUX_TELEVISION, | 233 | .type = EM28XX_VMUX_TELEVISION, |
249 | .vmux = SAA7115_COMPOSITE1, | 234 | .vmux = SAA7115_COMPOSITE1, |
250 | .amux = EM28XX_AMUX_LINE_IN, | 235 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -261,11 +246,10 @@ struct em28xx_board em28xx_boards[] = { | |||
261 | [EM2820_BOARD_LEADTEK_WINFAST_USBII_DELUXE] = { | 246 | [EM2820_BOARD_LEADTEK_WINFAST_USBII_DELUXE] = { |
262 | .name = "Leadtek Winfast USB II Deluxe", | 247 | .name = "Leadtek Winfast USB II Deluxe", |
263 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 248 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
264 | .vchannels = 3, | ||
265 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, | 249 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, |
266 | .tda9887_conf = TDA9887_PRESENT, | 250 | .tda9887_conf = TDA9887_PRESENT, |
267 | .decoder = EM28XX_SAA7114, | 251 | .decoder = EM28XX_SAA7114, |
268 | .input = { { | 252 | .input = { { |
269 | .type = EM28XX_VMUX_TELEVISION, | 253 | .type = EM28XX_VMUX_TELEVISION, |
270 | .vmux = 2, | 254 | .vmux = 2, |
271 | .amux = EM28XX_AMUX_VIDEO, | 255 | .amux = EM28XX_AMUX_VIDEO, |
@@ -282,9 +266,8 @@ struct em28xx_board em28xx_boards[] = { | |||
282 | [EM2820_BOARD_PINNACLE_DVC_100] = { | 266 | [EM2820_BOARD_PINNACLE_DVC_100] = { |
283 | .name = "Pinnacle Dazzle DVC 100", | 267 | .name = "Pinnacle Dazzle DVC 100", |
284 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 268 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
285 | .vchannels = 3, | ||
286 | .decoder = EM28XX_SAA7113, | 269 | .decoder = EM28XX_SAA7113, |
287 | .input = { { | 270 | .input = { { |
288 | .type = EM28XX_VMUX_COMPOSITE1, | 271 | .type = EM28XX_VMUX_COMPOSITE1, |
289 | .vmux = SAA7115_COMPOSITE0, | 272 | .vmux = SAA7115_COMPOSITE0, |
290 | .amux = EM28XX_AMUX_LINE_IN, | 273 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -295,10 +278,9 @@ struct em28xx_board em28xx_boards[] = { | |||
295 | } }, | 278 | } }, |
296 | }, | 279 | }, |
297 | [EM2820_BOARD_VIDEOLOGY_20K14XUSB] = { | 280 | [EM2820_BOARD_VIDEOLOGY_20K14XUSB] = { |
298 | .name = "Videology 20K14XUSB USB2.0", | 281 | .name = "Videology 20K14XUSB USB2.0", |
299 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 282 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
300 | .vchannels = 1, | 283 | .input = { { |
301 | .input = { { | ||
302 | .type = EM28XX_VMUX_COMPOSITE1, | 284 | .type = EM28XX_VMUX_COMPOSITE1, |
303 | .vmux = 0, | 285 | .vmux = 0, |
304 | .amux = EM28XX_AMUX_VIDEO, | 286 | .amux = EM28XX_AMUX_VIDEO, |
@@ -307,12 +289,10 @@ struct em28xx_board em28xx_boards[] = { | |||
307 | [EM2821_BOARD_PROLINK_PLAYTV_USB2] = { | 289 | [EM2821_BOARD_PROLINK_PLAYTV_USB2] = { |
308 | .name = "SIIG AVTuner-PVR/Prolink PlayTV USB 2.0", | 290 | .name = "SIIG AVTuner-PVR/Prolink PlayTV USB 2.0", |
309 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 291 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
310 | .vchannels = 3, | ||
311 | .is_em2800 = 0, | ||
312 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, /* unknown? */ | 292 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, /* unknown? */ |
313 | .tda9887_conf = TDA9887_PRESENT, /* unknown? */ | 293 | .tda9887_conf = TDA9887_PRESENT, /* unknown? */ |
314 | .decoder = EM28XX_SAA7113, | 294 | .decoder = EM28XX_SAA7113, |
315 | .input = { { | 295 | .input = { { |
316 | .type = EM28XX_VMUX_TELEVISION, | 296 | .type = EM28XX_VMUX_TELEVISION, |
317 | .vmux = SAA7115_COMPOSITE2, | 297 | .vmux = SAA7115_COMPOSITE2, |
318 | .amux = EM28XX_AMUX_LINE_IN, | 298 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -329,14 +309,12 @@ struct em28xx_board em28xx_boards[] = { | |||
329 | [EM2821_BOARD_SUPERCOMP_USB_2] = { | 309 | [EM2821_BOARD_SUPERCOMP_USB_2] = { |
330 | .name = "Supercomp USB 2.0 TV", | 310 | .name = "Supercomp USB 2.0 TV", |
331 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 311 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
332 | .vchannels = 3, | ||
333 | .is_em2800 = 0, | ||
334 | .tuner_type = TUNER_PHILIPS_FM1236_MK3, | 312 | .tuner_type = TUNER_PHILIPS_FM1236_MK3, |
335 | .tda9887_conf = TDA9887_PRESENT | | 313 | .tda9887_conf = TDA9887_PRESENT | |
336 | TDA9887_PORT1_ACTIVE | | 314 | TDA9887_PORT1_ACTIVE | |
337 | TDA9887_PORT2_ACTIVE, | 315 | TDA9887_PORT2_ACTIVE, |
338 | .decoder = EM28XX_SAA7113, | 316 | .decoder = EM28XX_SAA7113, |
339 | .input = { { | 317 | .input = { { |
340 | .type = EM28XX_VMUX_TELEVISION, | 318 | .type = EM28XX_VMUX_TELEVISION, |
341 | .vmux = SAA7115_COMPOSITE2, | 319 | .vmux = SAA7115_COMPOSITE2, |
342 | .amux = EM28XX_AMUX_LINE_IN, | 320 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -351,11 +329,10 @@ struct em28xx_board em28xx_boards[] = { | |||
351 | } }, | 329 | } }, |
352 | }, | 330 | }, |
353 | [EM2821_BOARD_USBGEAR_VD204] = { | 331 | [EM2821_BOARD_USBGEAR_VD204] = { |
354 | .name = "Usbgear VD204v9", | 332 | .name = "Usbgear VD204v9", |
355 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 333 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
356 | .vchannels = 2, | 334 | .decoder = EM28XX_SAA7113, |
357 | .decoder = EM28XX_SAA7113, | 335 | .input = { { |
358 | .input = { { | ||
359 | .type = EM28XX_VMUX_COMPOSITE1, | 336 | .type = EM28XX_VMUX_COMPOSITE1, |
360 | .vmux = SAA7115_COMPOSITE0, | 337 | .vmux = SAA7115_COMPOSITE0, |
361 | .amux = EM28XX_AMUX_LINE_IN, | 338 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -367,21 +344,19 @@ struct em28xx_board em28xx_boards[] = { | |||
367 | }, | 344 | }, |
368 | [EM2860_BOARD_NETGMBH_CAM] = { | 345 | [EM2860_BOARD_NETGMBH_CAM] = { |
369 | /* Beijing Huaqi Information Digital Technology Co., Ltd */ | 346 | /* Beijing Huaqi Information Digital Technology Co., Ltd */ |
370 | .name = "NetGMBH Cam", | 347 | .name = "NetGMBH Cam", |
371 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 348 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
372 | .vchannels = 1, | 349 | .input = { { |
373 | .input = { { | ||
374 | .type = EM28XX_VMUX_COMPOSITE1, | 350 | .type = EM28XX_VMUX_COMPOSITE1, |
375 | .vmux = 0, | 351 | .vmux = 0, |
376 | .amux = EM28XX_AMUX_VIDEO, | 352 | .amux = EM28XX_AMUX_VIDEO, |
377 | } }, | 353 | } }, |
378 | }, | 354 | }, |
379 | [EM2860_BOARD_TYPHOON_DVD_MAKER] = { | 355 | [EM2860_BOARD_TYPHOON_DVD_MAKER] = { |
380 | .name = "Typhoon DVD Maker", | 356 | .name = "Typhoon DVD Maker", |
381 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 357 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
382 | .vchannels = 2, | 358 | .decoder = EM28XX_SAA7113, |
383 | .decoder = EM28XX_SAA7113, | 359 | .input = { { |
384 | .input = { { | ||
385 | .type = EM28XX_VMUX_COMPOSITE1, | 360 | .type = EM28XX_VMUX_COMPOSITE1, |
386 | .vmux = SAA7115_COMPOSITE0, | 361 | .vmux = SAA7115_COMPOSITE0, |
387 | .amux = EM28XX_AMUX_LINE_IN, | 362 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -394,11 +369,10 @@ struct em28xx_board em28xx_boards[] = { | |||
394 | [EM2860_BOARD_GADMEI_UTV330] = { | 369 | [EM2860_BOARD_GADMEI_UTV330] = { |
395 | .name = "Gadmei UTV330", | 370 | .name = "Gadmei UTV330", |
396 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 371 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
397 | .vchannels = 3, | ||
398 | .tuner_type = TUNER_TNF_5335MF, | 372 | .tuner_type = TUNER_TNF_5335MF, |
399 | .tda9887_conf = TDA9887_PRESENT, | 373 | .tda9887_conf = TDA9887_PRESENT, |
400 | .decoder = EM28XX_SAA7113, | 374 | .decoder = EM28XX_SAA7113, |
401 | .input = { { | 375 | .input = { { |
402 | .type = EM28XX_VMUX_TELEVISION, | 376 | .type = EM28XX_VMUX_TELEVISION, |
403 | .vmux = SAA7115_COMPOSITE2, | 377 | .vmux = SAA7115_COMPOSITE2, |
404 | .amux = EM28XX_AMUX_VIDEO, | 378 | .amux = EM28XX_AMUX_VIDEO, |
@@ -415,10 +389,9 @@ struct em28xx_board em28xx_boards[] = { | |||
415 | [EM2860_BOARD_TERRATEC_HYBRID_XS] = { | 389 | [EM2860_BOARD_TERRATEC_HYBRID_XS] = { |
416 | .name = "Terratec Cinergy A Hybrid XS", | 390 | .name = "Terratec Cinergy A Hybrid XS", |
417 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 391 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
418 | .vchannels = 3, | ||
419 | .tuner_type = TUNER_XC2028, | 392 | .tuner_type = TUNER_XC2028, |
420 | .decoder = EM28XX_TVP5150, | 393 | .decoder = EM28XX_TVP5150, |
421 | .input = { { | 394 | .input = { { |
422 | .type = EM28XX_VMUX_TELEVISION, | 395 | .type = EM28XX_VMUX_TELEVISION, |
423 | .vmux = TVP5150_COMPOSITE0, | 396 | .vmux = TVP5150_COMPOSITE0, |
424 | .amux = EM28XX_AMUX_VIDEO, | 397 | .amux = EM28XX_AMUX_VIDEO, |
@@ -435,10 +408,9 @@ struct em28xx_board em28xx_boards[] = { | |||
435 | [EM2861_BOARD_KWORLD_PVRTV_300U] = { | 408 | [EM2861_BOARD_KWORLD_PVRTV_300U] = { |
436 | .name = "KWorld PVRTV 300U", | 409 | .name = "KWorld PVRTV 300U", |
437 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 410 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
438 | .vchannels = 3, | ||
439 | .tuner_type = TUNER_XC2028, | 411 | .tuner_type = TUNER_XC2028, |
440 | .decoder = EM28XX_TVP5150, | 412 | .decoder = EM28XX_TVP5150, |
441 | .input = { { | 413 | .input = { { |
442 | .type = EM28XX_VMUX_TELEVISION, | 414 | .type = EM28XX_VMUX_TELEVISION, |
443 | .vmux = TVP5150_COMPOSITE0, | 415 | .vmux = TVP5150_COMPOSITE0, |
444 | .amux = EM28XX_AMUX_VIDEO, | 416 | .amux = EM28XX_AMUX_VIDEO, |
@@ -454,8 +426,7 @@ struct em28xx_board em28xx_boards[] = { | |||
454 | }, | 426 | }, |
455 | [EM2861_BOARD_YAKUMO_MOVIE_MIXER] = { | 427 | [EM2861_BOARD_YAKUMO_MOVIE_MIXER] = { |
456 | .name = "Yakumo MovieMixer", | 428 | .name = "Yakumo MovieMixer", |
457 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 429 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
458 | .vchannels = 1, | ||
459 | .decoder = EM28XX_TVP5150, | 430 | .decoder = EM28XX_TVP5150, |
460 | .input = { { | 431 | .input = { { |
461 | .type = EM28XX_VMUX_TELEVISION, | 432 | .type = EM28XX_VMUX_TELEVISION, |
@@ -474,11 +445,10 @@ struct em28xx_board em28xx_boards[] = { | |||
474 | [EM2861_BOARD_PLEXTOR_PX_TV100U] = { | 445 | [EM2861_BOARD_PLEXTOR_PX_TV100U] = { |
475 | .name = "Plextor ConvertX PX-TV100U", | 446 | .name = "Plextor ConvertX PX-TV100U", |
476 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 447 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
477 | .vchannels = 3, | ||
478 | .tuner_type = TUNER_TNF_5335MF, | 448 | .tuner_type = TUNER_TNF_5335MF, |
479 | .tda9887_conf = TDA9887_PRESENT, | 449 | .tda9887_conf = TDA9887_PRESENT, |
480 | .decoder = EM28XX_TVP5150, | 450 | .decoder = EM28XX_TVP5150, |
481 | .input = { { | 451 | .input = { { |
482 | .type = EM28XX_VMUX_TELEVISION, | 452 | .type = EM28XX_VMUX_TELEVISION, |
483 | .vmux = TVP5150_COMPOSITE0, | 453 | .vmux = TVP5150_COMPOSITE0, |
484 | .amux = EM28XX_AMUX_LINE_IN, | 454 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -515,7 +485,6 @@ struct em28xx_board em28xx_boards[] = { | |||
515 | .name = "Pinnacle PCTV DVB-T", | 485 | .name = "Pinnacle PCTV DVB-T", |
516 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 486 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
517 | .tuner_type = TUNER_ABSENT, /* MT2060 */ | 487 | .tuner_type = TUNER_ABSENT, /* MT2060 */ |
518 | |||
519 | /* djh - I have serious doubts this is right... */ | 488 | /* djh - I have serious doubts this is right... */ |
520 | .xclk = EM28XX_XCLK_IR_RC5_MODE | | 489 | .xclk = EM28XX_XCLK_IR_RC5_MODE | |
521 | EM28XX_XCLK_FREQUENCY_10MHZ, | 490 | EM28XX_XCLK_FREQUENCY_10MHZ, |
@@ -528,11 +497,10 @@ struct em28xx_board em28xx_boards[] = { | |||
528 | [EM2880_BOARD_TERRATEC_HYBRID_XS_FR] = { | 497 | [EM2880_BOARD_TERRATEC_HYBRID_XS_FR] = { |
529 | .name = "Terratec Hybrid XS Secam", | 498 | .name = "Terratec Hybrid XS Secam", |
530 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 499 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
531 | .vchannels = 3, | ||
532 | .has_msp34xx = 1, | 500 | .has_msp34xx = 1, |
533 | .tuner_type = TUNER_XC2028, | 501 | .tuner_type = TUNER_XC2028, |
534 | .decoder = EM28XX_TVP5150, | 502 | .decoder = EM28XX_TVP5150, |
535 | .input = { { | 503 | .input = { { |
536 | .type = EM28XX_VMUX_TELEVISION, | 504 | .type = EM28XX_VMUX_TELEVISION, |
537 | .vmux = TVP5150_COMPOSITE0, | 505 | .vmux = TVP5150_COMPOSITE0, |
538 | .amux = EM28XX_AMUX_VIDEO, | 506 | .amux = EM28XX_AMUX_VIDEO, |
@@ -548,13 +516,12 @@ struct em28xx_board em28xx_boards[] = { | |||
548 | }, | 516 | }, |
549 | [EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900] = { | 517 | [EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900] = { |
550 | .name = "Hauppauge WinTV HVR 900", | 518 | .name = "Hauppauge WinTV HVR 900", |
551 | .vchannels = 3, | ||
552 | .tda9887_conf = TDA9887_PRESENT, | 519 | .tda9887_conf = TDA9887_PRESENT, |
553 | .tuner_type = TUNER_XC2028, | 520 | .tuner_type = TUNER_XC2028, |
554 | .mts_firmware = 1, | 521 | .mts_firmware = 1, |
555 | .has_dvb = 1, | 522 | .has_dvb = 1, |
556 | .decoder = EM28XX_TVP5150, | 523 | .decoder = EM28XX_TVP5150, |
557 | .input = { { | 524 | .input = { { |
558 | .type = EM28XX_VMUX_TELEVISION, | 525 | .type = EM28XX_VMUX_TELEVISION, |
559 | .vmux = TVP5150_COMPOSITE0, | 526 | .vmux = TVP5150_COMPOSITE0, |
560 | .amux = EM28XX_AMUX_VIDEO, | 527 | .amux = EM28XX_AMUX_VIDEO, |
@@ -570,12 +537,11 @@ struct em28xx_board em28xx_boards[] = { | |||
570 | }, | 537 | }, |
571 | [EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900_R2] = { | 538 | [EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900_R2] = { |
572 | .name = "Hauppauge WinTV HVR 900 (R2)", | 539 | .name = "Hauppauge WinTV HVR 900 (R2)", |
573 | .vchannels = 3, | ||
574 | .tda9887_conf = TDA9887_PRESENT, | 540 | .tda9887_conf = TDA9887_PRESENT, |
575 | .tuner_type = TUNER_XC2028, | 541 | .tuner_type = TUNER_XC2028, |
576 | .mts_firmware = 1, | 542 | .mts_firmware = 1, |
577 | .decoder = EM28XX_TVP5150, | 543 | .decoder = EM28XX_TVP5150, |
578 | .input = { { | 544 | .input = { { |
579 | .type = EM28XX_VMUX_TELEVISION, | 545 | .type = EM28XX_VMUX_TELEVISION, |
580 | .vmux = TVP5150_COMPOSITE0, | 546 | .vmux = TVP5150_COMPOSITE0, |
581 | .amux = EM28XX_AMUX_VIDEO, | 547 | .amux = EM28XX_AMUX_VIDEO, |
@@ -591,7 +557,6 @@ struct em28xx_board em28xx_boards[] = { | |||
591 | }, | 557 | }, |
592 | [EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950] = { | 558 | [EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950] = { |
593 | .name = "Hauppauge WinTV HVR 950", | 559 | .name = "Hauppauge WinTV HVR 950", |
594 | .vchannels = 3, | ||
595 | .tuner_type = TUNER_XC2028, | 560 | .tuner_type = TUNER_XC2028, |
596 | .mts_firmware = 1, | 561 | .mts_firmware = 1, |
597 | .has_dvb = 1, | 562 | .has_dvb = 1, |
@@ -613,7 +578,6 @@ struct em28xx_board em28xx_boards[] = { | |||
613 | }, | 578 | }, |
614 | [EM2880_BOARD_PINNACLE_PCTV_HD_PRO] = { | 579 | [EM2880_BOARD_PINNACLE_PCTV_HD_PRO] = { |
615 | .name = "Pinnacle PCTV HD Pro Stick", | 580 | .name = "Pinnacle PCTV HD Pro Stick", |
616 | .vchannels = 3, | ||
617 | .tuner_type = TUNER_XC2028, | 581 | .tuner_type = TUNER_XC2028, |
618 | .mts_firmware = 1, | 582 | .mts_firmware = 1, |
619 | .has_dvb = 1, | 583 | .has_dvb = 1, |
@@ -635,7 +599,6 @@ struct em28xx_board em28xx_boards[] = { | |||
635 | }, | 599 | }, |
636 | [EM2880_BOARD_AMD_ATI_TV_WONDER_HD_600] = { | 600 | [EM2880_BOARD_AMD_ATI_TV_WONDER_HD_600] = { |
637 | .name = "AMD ATI TV Wonder HD 600", | 601 | .name = "AMD ATI TV Wonder HD 600", |
638 | .vchannels = 3, | ||
639 | .tuner_type = TUNER_XC2028, | 602 | .tuner_type = TUNER_XC2028, |
640 | .mts_firmware = 1, | 603 | .mts_firmware = 1, |
641 | .has_dvb = 1, | 604 | .has_dvb = 1, |
@@ -656,10 +619,9 @@ struct em28xx_board em28xx_boards[] = { | |||
656 | } }, | 619 | } }, |
657 | }, | 620 | }, |
658 | [EM2880_BOARD_TERRATEC_HYBRID_XS] = { | 621 | [EM2880_BOARD_TERRATEC_HYBRID_XS] = { |
659 | .name = "Terratec Hybrid XS", | 622 | .name = "Terratec Hybrid XS", |
660 | .vchannels = 3, | 623 | .tuner_type = TUNER_XC2028, |
661 | .tuner_type = TUNER_XC2028, | 624 | .decoder = EM28XX_TVP5150, |
662 | .decoder = EM28XX_TVP5150, | ||
663 | .has_dvb = 1, | 625 | .has_dvb = 1, |
664 | .input = { { | 626 | .input = { { |
665 | .type = EM28XX_VMUX_TELEVISION, | 627 | .type = EM28XX_VMUX_TELEVISION, |
@@ -680,10 +642,9 @@ struct em28xx_board em28xx_boards[] = { | |||
680 | maybe we'll need it lateron */ | 642 | maybe we'll need it lateron */ |
681 | [EM2880_BOARD_TERRATEC_PRODIGY_XS] = { | 643 | [EM2880_BOARD_TERRATEC_PRODIGY_XS] = { |
682 | .name = "Terratec Prodigy XS", | 644 | .name = "Terratec Prodigy XS", |
683 | .vchannels = 3, | ||
684 | .tuner_type = TUNER_XC2028, | 645 | .tuner_type = TUNER_XC2028, |
685 | .decoder = EM28XX_TVP5150, | 646 | .decoder = EM28XX_TVP5150, |
686 | .input = { { | 647 | .input = { { |
687 | .type = EM28XX_VMUX_TELEVISION, | 648 | .type = EM28XX_VMUX_TELEVISION, |
688 | .vmux = TVP5150_COMPOSITE0, | 649 | .vmux = TVP5150_COMPOSITE0, |
689 | .amux = EM28XX_AMUX_VIDEO, | 650 | .amux = EM28XX_AMUX_VIDEO, |
@@ -699,13 +660,11 @@ struct em28xx_board em28xx_boards[] = { | |||
699 | }, | 660 | }, |
700 | [EM2820_BOARD_MSI_VOX_USB_2] = { | 661 | [EM2820_BOARD_MSI_VOX_USB_2] = { |
701 | .name = "MSI VOX USB 2.0", | 662 | .name = "MSI VOX USB 2.0", |
702 | .vchannels = 3, | ||
703 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, | 663 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, |
704 | .tda9887_conf = TDA9887_PRESENT | | 664 | .tda9887_conf = TDA9887_PRESENT | |
705 | TDA9887_PORT1_ACTIVE | | 665 | TDA9887_PORT1_ACTIVE | |
706 | TDA9887_PORT2_ACTIVE, | 666 | TDA9887_PORT2_ACTIVE, |
707 | .max_range_640_480 = 1, | 667 | .max_range_640_480 = 1, |
708 | |||
709 | .decoder = EM28XX_SAA7114, | 668 | .decoder = EM28XX_SAA7114, |
710 | .input = { { | 669 | .input = { { |
711 | .type = EM28XX_VMUX_TELEVISION, | 670 | .type = EM28XX_VMUX_TELEVISION, |
@@ -724,11 +683,10 @@ struct em28xx_board em28xx_boards[] = { | |||
724 | [EM2800_BOARD_TERRATEC_CINERGY_200] = { | 683 | [EM2800_BOARD_TERRATEC_CINERGY_200] = { |
725 | .name = "Terratec Cinergy 200 USB", | 684 | .name = "Terratec Cinergy 200 USB", |
726 | .is_em2800 = 1, | 685 | .is_em2800 = 1, |
727 | .vchannels = 3, | ||
728 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, | 686 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, |
729 | .tda9887_conf = TDA9887_PRESENT, | 687 | .tda9887_conf = TDA9887_PRESENT, |
730 | .decoder = EM28XX_SAA7113, | 688 | .decoder = EM28XX_SAA7113, |
731 | .input = { { | 689 | .input = { { |
732 | .type = EM28XX_VMUX_TELEVISION, | 690 | .type = EM28XX_VMUX_TELEVISION, |
733 | .vmux = SAA7115_COMPOSITE2, | 691 | .vmux = SAA7115_COMPOSITE2, |
734 | .amux = EM28XX_AMUX_VIDEO, | 692 | .amux = EM28XX_AMUX_VIDEO, |
@@ -745,9 +703,8 @@ struct em28xx_board em28xx_boards[] = { | |||
745 | [EM2800_BOARD_GRABBEEX_USB2800] = { | 703 | [EM2800_BOARD_GRABBEEX_USB2800] = { |
746 | .name = "eMPIA Technology, Inc. GrabBeeX+ Video Encoder", | 704 | .name = "eMPIA Technology, Inc. GrabBeeX+ Video Encoder", |
747 | .is_em2800 = 1, | 705 | .is_em2800 = 1, |
748 | .vchannels = 2, | ||
749 | .decoder = EM28XX_SAA7113, | 706 | .decoder = EM28XX_SAA7113, |
750 | .input = { { | 707 | .input = { { |
751 | .type = EM28XX_VMUX_COMPOSITE1, | 708 | .type = EM28XX_VMUX_COMPOSITE1, |
752 | .vmux = SAA7115_COMPOSITE0, | 709 | .vmux = SAA7115_COMPOSITE0, |
753 | .amux = EM28XX_AMUX_LINE_IN, | 710 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -760,11 +717,10 @@ struct em28xx_board em28xx_boards[] = { | |||
760 | [EM2800_BOARD_LEADTEK_WINFAST_USBII] = { | 717 | [EM2800_BOARD_LEADTEK_WINFAST_USBII] = { |
761 | .name = "Leadtek Winfast USB II", | 718 | .name = "Leadtek Winfast USB II", |
762 | .is_em2800 = 1, | 719 | .is_em2800 = 1, |
763 | .vchannels = 3, | ||
764 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, | 720 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, |
765 | .tda9887_conf = TDA9887_PRESENT, | 721 | .tda9887_conf = TDA9887_PRESENT, |
766 | .decoder = EM28XX_SAA7113, | 722 | .decoder = EM28XX_SAA7113, |
767 | .input = { { | 723 | .input = { { |
768 | .type = EM28XX_VMUX_TELEVISION, | 724 | .type = EM28XX_VMUX_TELEVISION, |
769 | .vmux = SAA7115_COMPOSITE2, | 725 | .vmux = SAA7115_COMPOSITE2, |
770 | .amux = EM28XX_AMUX_VIDEO, | 726 | .amux = EM28XX_AMUX_VIDEO, |
@@ -781,11 +737,10 @@ struct em28xx_board em28xx_boards[] = { | |||
781 | [EM2800_BOARD_KWORLD_USB2800] = { | 737 | [EM2800_BOARD_KWORLD_USB2800] = { |
782 | .name = "Kworld USB2800", | 738 | .name = "Kworld USB2800", |
783 | .is_em2800 = 1, | 739 | .is_em2800 = 1, |
784 | .vchannels = 3, | ||
785 | .tuner_type = TUNER_PHILIPS_FCV1236D, | 740 | .tuner_type = TUNER_PHILIPS_FCV1236D, |
786 | .tda9887_conf = TDA9887_PRESENT, | 741 | .tda9887_conf = TDA9887_PRESENT, |
787 | .decoder = EM28XX_SAA7113, | 742 | .decoder = EM28XX_SAA7113, |
788 | .input = { { | 743 | .input = { { |
789 | .type = EM28XX_VMUX_TELEVISION, | 744 | .type = EM28XX_VMUX_TELEVISION, |
790 | .vmux = SAA7115_COMPOSITE2, | 745 | .vmux = SAA7115_COMPOSITE2, |
791 | .amux = EM28XX_AMUX_VIDEO, | 746 | .amux = EM28XX_AMUX_VIDEO, |
@@ -801,10 +756,9 @@ struct em28xx_board em28xx_boards[] = { | |||
801 | }, | 756 | }, |
802 | [EM2820_BOARD_PINNACLE_DVC_90] = { | 757 | [EM2820_BOARD_PINNACLE_DVC_90] = { |
803 | .name = "Pinnacle Dazzle DVC 90/DVC 100", | 758 | .name = "Pinnacle Dazzle DVC 90/DVC 100", |
804 | .vchannels = 3, | ||
805 | .tuner_type = TUNER_ABSENT, | 759 | .tuner_type = TUNER_ABSENT, |
806 | .decoder = EM28XX_SAA7113, | 760 | .decoder = EM28XX_SAA7113, |
807 | .input = { { | 761 | .input = { { |
808 | .type = EM28XX_VMUX_COMPOSITE1, | 762 | .type = EM28XX_VMUX_COMPOSITE1, |
809 | .vmux = SAA7115_COMPOSITE0, | 763 | .vmux = SAA7115_COMPOSITE0, |
810 | .amux = EM28XX_AMUX_LINE_IN, | 764 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -817,11 +771,10 @@ struct em28xx_board em28xx_boards[] = { | |||
817 | [EM2800_BOARD_VGEAR_POCKETTV] = { | 771 | [EM2800_BOARD_VGEAR_POCKETTV] = { |
818 | .name = "V-Gear PocketTV", | 772 | .name = "V-Gear PocketTV", |
819 | .is_em2800 = 1, | 773 | .is_em2800 = 1, |
820 | .vchannels = 3, | ||
821 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, | 774 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, |
822 | .tda9887_conf = TDA9887_PRESENT, | 775 | .tda9887_conf = TDA9887_PRESENT, |
823 | .decoder = EM28XX_SAA7113, | 776 | .decoder = EM28XX_SAA7113, |
824 | .input = { { | 777 | .input = { { |
825 | .type = EM28XX_VMUX_TELEVISION, | 778 | .type = EM28XX_VMUX_TELEVISION, |
826 | .vmux = SAA7115_COMPOSITE2, | 779 | .vmux = SAA7115_COMPOSITE2, |
827 | .amux = EM28XX_AMUX_VIDEO, | 780 | .amux = EM28XX_AMUX_VIDEO, |
@@ -837,11 +790,10 @@ struct em28xx_board em28xx_boards[] = { | |||
837 | }, | 790 | }, |
838 | [EM2820_BOARD_PROLINK_PLAYTV_USB2] = { | 791 | [EM2820_BOARD_PROLINK_PLAYTV_USB2] = { |
839 | .name = "Pixelview Prolink PlayTV USB 2.0", | 792 | .name = "Pixelview Prolink PlayTV USB 2.0", |
840 | .vchannels = 3, | ||
841 | .tda9887_conf = TDA9887_PRESENT, | 793 | .tda9887_conf = TDA9887_PRESENT, |
842 | .tuner_type = TUNER_YMEC_TVF_5533MF, | 794 | .tuner_type = TUNER_YMEC_TVF_5533MF, |
843 | .decoder = EM28XX_SAA7113, | 795 | .decoder = EM28XX_SAA7113, |
844 | .input = { { | 796 | .input = { { |
845 | .type = EM28XX_VMUX_TELEVISION, | 797 | .type = EM28XX_VMUX_TELEVISION, |
846 | .vmux = SAA7115_COMPOSITE2, | 798 | .vmux = SAA7115_COMPOSITE2, |
847 | .amux = EM28XX_AMUX_VIDEO, | 799 | .amux = EM28XX_AMUX_VIDEO, |
@@ -858,13 +810,12 @@ struct em28xx_board em28xx_boards[] = { | |||
858 | } }, | 810 | } }, |
859 | }, | 811 | }, |
860 | [EM2860_BOARD_POINTNIX_INTRAORAL_CAMERA] = { | 812 | [EM2860_BOARD_POINTNIX_INTRAORAL_CAMERA] = { |
861 | .name = "PointNix Intra-Oral Camera", | 813 | .name = "PointNix Intra-Oral Camera", |
862 | .has_snapshot_button = 1, | 814 | .has_snapshot_button = 1, |
863 | .vchannels = 1, | 815 | .tda9887_conf = TDA9887_PRESENT, |
864 | .tda9887_conf = TDA9887_PRESENT, | 816 | .tuner_type = TUNER_ABSENT, |
865 | .tuner_type = TUNER_ABSENT, | 817 | .decoder = EM28XX_SAA7113, |
866 | .decoder = EM28XX_SAA7113, | 818 | .input = { { |
867 | .input = { { | ||
868 | .type = EM28XX_VMUX_SVIDEO, | 819 | .type = EM28XX_VMUX_SVIDEO, |
869 | .vmux = SAA7115_SVIDEO3, | 820 | .vmux = SAA7115_SVIDEO3, |
870 | .amux = EM28XX_AMUX_VIDEO, | 821 | .amux = EM28XX_AMUX_VIDEO, |
@@ -873,10 +824,9 @@ struct em28xx_board em28xx_boards[] = { | |||
873 | [EM2880_BOARD_MSI_DIGIVOX_AD] = { | 824 | [EM2880_BOARD_MSI_DIGIVOX_AD] = { |
874 | .name = "MSI DigiVox A/D", | 825 | .name = "MSI DigiVox A/D", |
875 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 826 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
876 | .vchannels = 3, | ||
877 | .tuner_type = TUNER_XC2028, | 827 | .tuner_type = TUNER_XC2028, |
878 | .decoder = EM28XX_TVP5150, | 828 | .decoder = EM28XX_TVP5150, |
879 | .input = { { | 829 | .input = { { |
880 | .type = EM28XX_VMUX_TELEVISION, | 830 | .type = EM28XX_VMUX_TELEVISION, |
881 | .vmux = TVP5150_COMPOSITE0, | 831 | .vmux = TVP5150_COMPOSITE0, |
882 | .amux = EM28XX_AMUX_VIDEO, | 832 | .amux = EM28XX_AMUX_VIDEO, |
@@ -893,10 +843,9 @@ struct em28xx_board em28xx_boards[] = { | |||
893 | [EM2880_BOARD_MSI_DIGIVOX_AD_II] = { | 843 | [EM2880_BOARD_MSI_DIGIVOX_AD_II] = { |
894 | .name = "MSI DigiVox A/D II", | 844 | .name = "MSI DigiVox A/D II", |
895 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 845 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
896 | .vchannels = 3, | ||
897 | .tuner_type = TUNER_XC2028, | 846 | .tuner_type = TUNER_XC2028, |
898 | .decoder = EM28XX_TVP5150, | 847 | .decoder = EM28XX_TVP5150, |
899 | .input = { { | 848 | .input = { { |
900 | .type = EM28XX_VMUX_TELEVISION, | 849 | .type = EM28XX_VMUX_TELEVISION, |
901 | .vmux = TVP5150_COMPOSITE0, | 850 | .vmux = TVP5150_COMPOSITE0, |
902 | .amux = EM28XX_AMUX_VIDEO, | 851 | .amux = EM28XX_AMUX_VIDEO, |
@@ -913,10 +862,9 @@ struct em28xx_board em28xx_boards[] = { | |||
913 | [EM2880_BOARD_KWORLD_DVB_305U] = { | 862 | [EM2880_BOARD_KWORLD_DVB_305U] = { |
914 | .name = "KWorld DVB-T 305U", | 863 | .name = "KWorld DVB-T 305U", |
915 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 864 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
916 | .vchannels = 3, | ||
917 | .tuner_type = TUNER_XC2028, | 865 | .tuner_type = TUNER_XC2028, |
918 | .decoder = EM28XX_TVP5150, | 866 | .decoder = EM28XX_TVP5150, |
919 | .input = { { | 867 | .input = { { |
920 | .type = EM28XX_VMUX_TELEVISION, | 868 | .type = EM28XX_VMUX_TELEVISION, |
921 | .vmux = TVP5150_COMPOSITE0, | 869 | .vmux = TVP5150_COMPOSITE0, |
922 | .amux = EM28XX_AMUX_VIDEO, | 870 | .amux = EM28XX_AMUX_VIDEO, |
@@ -932,12 +880,11 @@ struct em28xx_board em28xx_boards[] = { | |||
932 | }, | 880 | }, |
933 | [EM2880_BOARD_KWORLD_DVB_310U] = { | 881 | [EM2880_BOARD_KWORLD_DVB_310U] = { |
934 | .name = "KWorld DVB-T 310U", | 882 | .name = "KWorld DVB-T 310U", |
935 | .vchannels = 3, | ||
936 | .tuner_type = TUNER_XC2028, | 883 | .tuner_type = TUNER_XC2028, |
937 | .has_dvb = 1, | 884 | .has_dvb = 1, |
938 | .mts_firmware = 1, | 885 | .mts_firmware = 1, |
939 | .decoder = EM28XX_TVP5150, | 886 | .decoder = EM28XX_TVP5150, |
940 | .input = { { | 887 | .input = { { |
941 | .type = EM28XX_VMUX_TELEVISION, | 888 | .type = EM28XX_VMUX_TELEVISION, |
942 | .vmux = TVP5150_COMPOSITE0, | 889 | .vmux = TVP5150_COMPOSITE0, |
943 | .amux = EM28XX_AMUX_VIDEO, | 890 | .amux = EM28XX_AMUX_VIDEO, |
@@ -954,10 +901,9 @@ struct em28xx_board em28xx_boards[] = { | |||
954 | [EM2881_BOARD_DNT_DA2_HYBRID] = { | 901 | [EM2881_BOARD_DNT_DA2_HYBRID] = { |
955 | .name = "DNT DA2 Hybrid", | 902 | .name = "DNT DA2 Hybrid", |
956 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 903 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
957 | .vchannels = 3, | ||
958 | .tuner_type = TUNER_XC2028, | 904 | .tuner_type = TUNER_XC2028, |
959 | .decoder = EM28XX_TVP5150, | 905 | .decoder = EM28XX_TVP5150, |
960 | .input = { { | 906 | .input = { { |
961 | .type = EM28XX_VMUX_TELEVISION, | 907 | .type = EM28XX_VMUX_TELEVISION, |
962 | .vmux = TVP5150_COMPOSITE0, | 908 | .vmux = TVP5150_COMPOSITE0, |
963 | .amux = EM28XX_AMUX_VIDEO, | 909 | .amux = EM28XX_AMUX_VIDEO, |
@@ -974,10 +920,9 @@ struct em28xx_board em28xx_boards[] = { | |||
974 | [EM2881_BOARD_PINNACLE_HYBRID_PRO] = { | 920 | [EM2881_BOARD_PINNACLE_HYBRID_PRO] = { |
975 | .name = "Pinnacle Hybrid Pro", | 921 | .name = "Pinnacle Hybrid Pro", |
976 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 922 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
977 | .vchannels = 3, | ||
978 | .tuner_type = TUNER_XC2028, | 923 | .tuner_type = TUNER_XC2028, |
979 | .decoder = EM28XX_TVP5150, | 924 | .decoder = EM28XX_TVP5150, |
980 | .input = { { | 925 | .input = { { |
981 | .type = EM28XX_VMUX_TELEVISION, | 926 | .type = EM28XX_VMUX_TELEVISION, |
982 | .vmux = TVP5150_COMPOSITE0, | 927 | .vmux = TVP5150_COMPOSITE0, |
983 | .amux = EM28XX_AMUX_VIDEO, | 928 | .amux = EM28XX_AMUX_VIDEO, |
@@ -994,11 +939,10 @@ struct em28xx_board em28xx_boards[] = { | |||
994 | [EM2882_BOARD_PINNACLE_HYBRID_PRO] = { | 939 | [EM2882_BOARD_PINNACLE_HYBRID_PRO] = { |
995 | .name = "Pinnacle Hybrid Pro (2)", | 940 | .name = "Pinnacle Hybrid Pro (2)", |
996 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 941 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
997 | .vchannels = 3, | ||
998 | .tuner_type = TUNER_XC2028, | 942 | .tuner_type = TUNER_XC2028, |
999 | .mts_firmware = 1, | 943 | .mts_firmware = 1, |
1000 | .decoder = EM28XX_TVP5150, | 944 | .decoder = EM28XX_TVP5150, |
1001 | .input = { { | 945 | .input = { { |
1002 | .type = EM28XX_VMUX_TELEVISION, | 946 | .type = EM28XX_VMUX_TELEVISION, |
1003 | .vmux = TVP5150_COMPOSITE0, | 947 | .vmux = TVP5150_COMPOSITE0, |
1004 | .amux = EM28XX_AMUX_VIDEO, | 948 | .amux = EM28XX_AMUX_VIDEO, |
@@ -1015,10 +959,9 @@ struct em28xx_board em28xx_boards[] = { | |||
1015 | [EM2882_BOARD_KWORLD_VS_DVBT] = { | 959 | [EM2882_BOARD_KWORLD_VS_DVBT] = { |
1016 | .name = "Kworld VS-DVB-T 323UR", | 960 | .name = "Kworld VS-DVB-T 323UR", |
1017 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 961 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
1018 | .vchannels = 3, | ||
1019 | .tuner_type = TUNER_XC2028, | 962 | .tuner_type = TUNER_XC2028, |
1020 | .decoder = EM28XX_TVP5150, | 963 | .decoder = EM28XX_TVP5150, |
1021 | .input = { { | 964 | .input = { { |
1022 | .type = EM28XX_VMUX_TELEVISION, | 965 | .type = EM28XX_VMUX_TELEVISION, |
1023 | .vmux = TVP5150_COMPOSITE0, | 966 | .vmux = TVP5150_COMPOSITE0, |
1024 | .amux = EM28XX_AMUX_VIDEO, | 967 | .amux = EM28XX_AMUX_VIDEO, |
@@ -1035,10 +978,9 @@ struct em28xx_board em28xx_boards[] = { | |||
1035 | [EM2882_BOARD_TERRATEC_HYBRID_XS] = { | 978 | [EM2882_BOARD_TERRATEC_HYBRID_XS] = { |
1036 | .name = "Terratec Hybrid XS (em2882)", | 979 | .name = "Terratec Hybrid XS (em2882)", |
1037 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 980 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
1038 | .vchannels = 3, | ||
1039 | .tuner_type = TUNER_XC2028, | 981 | .tuner_type = TUNER_XC2028, |
1040 | .decoder = EM28XX_TVP5150, | 982 | .decoder = EM28XX_TVP5150, |
1041 | .input = { { | 983 | .input = { { |
1042 | .type = EM28XX_VMUX_TELEVISION, | 984 | .type = EM28XX_VMUX_TELEVISION, |
1043 | .vmux = TVP5150_COMPOSITE0, | 985 | .vmux = TVP5150_COMPOSITE0, |
1044 | .amux = EM28XX_AMUX_VIDEO, | 986 | .amux = EM28XX_AMUX_VIDEO, |
@@ -1055,11 +997,9 @@ struct em28xx_board em28xx_boards[] = { | |||
1055 | [EM2883_BOARD_KWORLD_HYBRID_A316] = { | 997 | [EM2883_BOARD_KWORLD_HYBRID_A316] = { |
1056 | .name = "Kworld PlusTV HD Hybrid 330", | 998 | .name = "Kworld PlusTV HD Hybrid 330", |
1057 | .valid = EM28XX_BOARD_NOT_VALIDATED, | 999 | .valid = EM28XX_BOARD_NOT_VALIDATED, |
1058 | .vchannels = 3, | ||
1059 | .is_em2800 = 0, | ||
1060 | .tuner_type = TUNER_XC2028, | 1000 | .tuner_type = TUNER_XC2028, |
1061 | .decoder = EM28XX_TVP5150, | 1001 | .decoder = EM28XX_TVP5150, |
1062 | .input = { { | 1002 | .input = { { |
1063 | .type = EM28XX_VMUX_TELEVISION, | 1003 | .type = EM28XX_VMUX_TELEVISION, |
1064 | .vmux = TVP5150_COMPOSITE0, | 1004 | .vmux = TVP5150_COMPOSITE0, |
1065 | .amux = EM28XX_AMUX_VIDEO, | 1005 | .amux = EM28XX_AMUX_VIDEO, |
@@ -1075,11 +1015,10 @@ struct em28xx_board em28xx_boards[] = { | |||
1075 | }, | 1015 | }, |
1076 | [EM2820_BOARD_COMPRO_VIDEOMATE_FORYOU] = { | 1016 | [EM2820_BOARD_COMPRO_VIDEOMATE_FORYOU] = { |
1077 | .name = "Compro VideoMate ForYou/Stereo", | 1017 | .name = "Compro VideoMate ForYou/Stereo", |
1078 | .vchannels = 2, | ||
1079 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, | 1018 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, |
1080 | .tda9887_conf = TDA9887_PRESENT, | 1019 | .tda9887_conf = TDA9887_PRESENT, |
1081 | .decoder = EM28XX_TVP5150, | 1020 | .decoder = EM28XX_TVP5150, |
1082 | .input = { { | 1021 | .input = { { |
1083 | .type = EM28XX_VMUX_TELEVISION, | 1022 | .type = EM28XX_VMUX_TELEVISION, |
1084 | .vmux = TVP5150_COMPOSITE0, | 1023 | .vmux = TVP5150_COMPOSITE0, |
1085 | .amux = EM28XX_AMUX_LINE_IN, | 1024 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -1091,7 +1030,6 @@ struct em28xx_board em28xx_boards[] = { | |||
1091 | }, | 1030 | }, |
1092 | [EM2874_BOARD_PINNACLE_PCTV_80E] = { | 1031 | [EM2874_BOARD_PINNACLE_PCTV_80E] = { |
1093 | .name = "Pinnacle PCTV HD Mini", | 1032 | .name = "Pinnacle PCTV HD Mini", |
1094 | .vchannels = 0, | ||
1095 | .tuner_type = TUNER_ABSENT, | 1033 | .tuner_type = TUNER_ABSENT, |
1096 | .has_dvb = 1, | 1034 | .has_dvb = 1, |
1097 | .ir_codes = ir_codes_pinnacle_pctv_hd, | 1035 | .ir_codes = ir_codes_pinnacle_pctv_hd, |
@@ -1100,7 +1038,7 @@ struct em28xx_board em28xx_boards[] = { | |||
1100 | EM2874_I2C_SECONDARY_BUS_SELECT | | 1038 | EM2874_I2C_SECONDARY_BUS_SELECT | |
1101 | EM28XX_I2C_FREQ_400_KHZ, | 1039 | EM28XX_I2C_FREQ_400_KHZ, |
1102 | #ifdef DJH_DEBUG | 1040 | #ifdef DJH_DEBUG |
1103 | .input = { { | 1041 | .input = { { |
1104 | .type = EM28XX_VMUX_TELEVISION, | 1042 | .type = EM28XX_VMUX_TELEVISION, |
1105 | .vmux = TVP5150_COMPOSITE0, | 1043 | .vmux = TVP5150_COMPOSITE0, |
1106 | .amux = EM28XX_AMUX_LINE_IN, | 1044 | .amux = EM28XX_AMUX_LINE_IN, |
@@ -1330,7 +1268,6 @@ static void em28xx_set_model(struct em28xx *dev) | |||
1330 | dev->has_msp34xx = em28xx_boards[dev->model].has_msp34xx; | 1268 | dev->has_msp34xx = em28xx_boards[dev->model].has_msp34xx; |
1331 | dev->tda9887_conf = em28xx_boards[dev->model].tda9887_conf; | 1269 | dev->tda9887_conf = em28xx_boards[dev->model].tda9887_conf; |
1332 | dev->decoder = em28xx_boards[dev->model].decoder; | 1270 | dev->decoder = em28xx_boards[dev->model].decoder; |
1333 | dev->video_inputs = em28xx_boards[dev->model].vchannels; | ||
1334 | dev->xclk = em28xx_boards[dev->model].xclk; | 1271 | dev->xclk = em28xx_boards[dev->model].xclk; |
1335 | dev->i2c_speed = em28xx_boards[dev->model].i2c_speed; | 1272 | dev->i2c_speed = em28xx_boards[dev->model].i2c_speed; |
1336 | dev->max_range_640_480 = em28xx_boards[dev->model].max_range_640_480; | 1273 | dev->max_range_640_480 = em28xx_boards[dev->model].max_range_640_480; |
diff --git a/drivers/media/video/em28xx/em28xx.h b/drivers/media/video/em28xx/em28xx.h index 3bf23d384266..059cc7f43b56 100644 --- a/drivers/media/video/em28xx/em28xx.h +++ b/drivers/media/video/em28xx/em28xx.h | |||
@@ -328,7 +328,6 @@ struct em28xx_reg_seq { | |||
328 | 328 | ||
329 | struct em28xx_board { | 329 | struct em28xx_board { |
330 | char *name; | 330 | char *name; |
331 | int vchannels; | ||
332 | int tuner_type; | 331 | int tuner_type; |
333 | int tuner_addr; | 332 | int tuner_addr; |
334 | 333 | ||
@@ -441,7 +440,6 @@ struct em28xx { | |||
441 | /* GPIO sequences for tuner callbacks */ | 440 | /* GPIO sequences for tuner callbacks */ |
442 | struct em28xx_reg_seq *tun_analog_gpio, *tun_digital_gpio; | 441 | struct em28xx_reg_seq *tun_analog_gpio, *tun_digital_gpio; |
443 | 442 | ||
444 | int video_inputs; /* number of video inputs */ | ||
445 | struct list_head devlist; | 443 | struct list_head devlist; |
446 | 444 | ||
447 | u32 i2s_speed; /* I2S speed for audio digital stream */ | 445 | u32 i2s_speed; /* I2S speed for audio digital stream */ |