diff options
Diffstat (limited to 'drivers/media/video/cx88/cx88-cards.c')
-rw-r--r-- | drivers/media/video/cx88/cx88-cards.c | 310 |
1 files changed, 253 insertions, 57 deletions
diff --git a/drivers/media/video/cx88/cx88-cards.c b/drivers/media/video/cx88/cx88-cards.c index 367624822d77..ebf02a7f81e8 100644 --- a/drivers/media/video/cx88/cx88-cards.c +++ b/drivers/media/video/cx88/cx88-cards.c | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * $Id: cx88-cards.c,v 1.66 2005/03/04 09:12:23 kraxel Exp $ | 2 | * $Id: cx88-cards.c,v 1.90 2005/07/28 02:47:42 mkrufky Exp $ |
3 | * | 3 | * |
4 | * device driver for Conexant 2388x based TV cards | 4 | * device driver for Conexant 2388x based TV cards |
5 | * card-specific stuff. | 5 | * card-specific stuff. |
@@ -35,6 +35,9 @@ struct cx88_board cx88_boards[] = { | |||
35 | [CX88_BOARD_UNKNOWN] = { | 35 | [CX88_BOARD_UNKNOWN] = { |
36 | .name = "UNKNOWN/GENERIC", | 36 | .name = "UNKNOWN/GENERIC", |
37 | .tuner_type = UNSET, | 37 | .tuner_type = UNSET, |
38 | .radio_type = UNSET, | ||
39 | .tuner_addr = ADDR_UNSET, | ||
40 | .radio_addr = ADDR_UNSET, | ||
38 | .input = {{ | 41 | .input = {{ |
39 | .type = CX88_VMUX_COMPOSITE1, | 42 | .type = CX88_VMUX_COMPOSITE1, |
40 | .vmux = 0, | 43 | .vmux = 0, |
@@ -52,6 +55,9 @@ struct cx88_board cx88_boards[] = { | |||
52 | [CX88_BOARD_HAUPPAUGE] = { | 55 | [CX88_BOARD_HAUPPAUGE] = { |
53 | .name = "Hauppauge WinTV 34xxx models", | 56 | .name = "Hauppauge WinTV 34xxx models", |
54 | .tuner_type = UNSET, | 57 | .tuner_type = UNSET, |
58 | .radio_type = UNSET, | ||
59 | .tuner_addr = ADDR_UNSET, | ||
60 | .radio_addr = ADDR_UNSET, | ||
55 | .tda9887_conf = TDA9887_PRESENT, | 61 | .tda9887_conf = TDA9887_PRESENT, |
56 | .input = {{ | 62 | .input = {{ |
57 | .type = CX88_VMUX_TELEVISION, | 63 | .type = CX88_VMUX_TELEVISION, |
@@ -78,14 +84,23 @@ struct cx88_board cx88_boards[] = { | |||
78 | [CX88_BOARD_GDI] = { | 84 | [CX88_BOARD_GDI] = { |
79 | .name = "GDI Black Gold", | 85 | .name = "GDI Black Gold", |
80 | .tuner_type = UNSET, | 86 | .tuner_type = UNSET, |
87 | .radio_type = UNSET, | ||
88 | .tuner_addr = ADDR_UNSET, | ||
89 | .radio_addr = ADDR_UNSET, | ||
81 | .input = {{ | 90 | .input = {{ |
82 | .type = CX88_VMUX_TELEVISION, | 91 | .type = CX88_VMUX_TELEVISION, |
83 | .vmux = 0, | 92 | .vmux = 0, |
93 | },{ | ||
94 | .type = CX88_VMUX_SVIDEO, | ||
95 | .vmux = 2, | ||
84 | }}, | 96 | }}, |
85 | }, | 97 | }, |
86 | [CX88_BOARD_PIXELVIEW] = { | 98 | [CX88_BOARD_PIXELVIEW] = { |
87 | .name = "PixelView", | 99 | .name = "PixelView", |
88 | .tuner_type = 5, | 100 | .tuner_type = TUNER_PHILIPS_PAL, |
101 | .radio_type = UNSET, | ||
102 | .tuner_addr = ADDR_UNSET, | ||
103 | .radio_addr = ADDR_UNSET, | ||
89 | .input = {{ | 104 | .input = {{ |
90 | .type = CX88_VMUX_TELEVISION, | 105 | .type = CX88_VMUX_TELEVISION, |
91 | .vmux = 0, | 106 | .vmux = 0, |
@@ -104,7 +119,10 @@ struct cx88_board cx88_boards[] = { | |||
104 | }, | 119 | }, |
105 | [CX88_BOARD_ATI_WONDER_PRO] = { | 120 | [CX88_BOARD_ATI_WONDER_PRO] = { |
106 | .name = "ATI TV Wonder Pro", | 121 | .name = "ATI TV Wonder Pro", |
107 | .tuner_type = 44, | 122 | .tuner_type = TUNER_PHILIPS_4IN1, |
123 | .radio_type = UNSET, | ||
124 | .tuner_addr = ADDR_UNSET, | ||
125 | .radio_addr = ADDR_UNSET, | ||
108 | .tda9887_conf = TDA9887_PRESENT | TDA9887_INTERCARRIER, | 126 | .tda9887_conf = TDA9887_PRESENT | TDA9887_INTERCARRIER, |
109 | .input = {{ | 127 | .input = {{ |
110 | .type = CX88_VMUX_TELEVISION, | 128 | .type = CX88_VMUX_TELEVISION, |
@@ -122,7 +140,10 @@ struct cx88_board cx88_boards[] = { | |||
122 | }, | 140 | }, |
123 | [CX88_BOARD_WINFAST2000XP_EXPERT] = { | 141 | [CX88_BOARD_WINFAST2000XP_EXPERT] = { |
124 | .name = "Leadtek Winfast 2000XP Expert", | 142 | .name = "Leadtek Winfast 2000XP Expert", |
125 | .tuner_type = 44, | 143 | .tuner_type = TUNER_PHILIPS_4IN1, |
144 | .radio_type = UNSET, | ||
145 | .tuner_addr = ADDR_UNSET, | ||
146 | .radio_addr = ADDR_UNSET, | ||
126 | .tda9887_conf = TDA9887_PRESENT, | 147 | .tda9887_conf = TDA9887_PRESENT, |
127 | .input = {{ | 148 | .input = {{ |
128 | .type = CX88_VMUX_TELEVISION, | 149 | .type = CX88_VMUX_TELEVISION, |
@@ -156,7 +177,10 @@ struct cx88_board cx88_boards[] = { | |||
156 | }, | 177 | }, |
157 | [CX88_BOARD_AVERTV_303] = { | 178 | [CX88_BOARD_AVERTV_303] = { |
158 | .name = "AverTV Studio 303 (M126)", | 179 | .name = "AverTV Studio 303 (M126)", |
159 | .tuner_type = 38, | 180 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, |
181 | .radio_type = UNSET, | ||
182 | .tuner_addr = ADDR_UNSET, | ||
183 | .radio_addr = ADDR_UNSET, | ||
160 | .tda9887_conf = TDA9887_PRESENT, | 184 | .tda9887_conf = TDA9887_PRESENT, |
161 | .input = {{ | 185 | .input = {{ |
162 | .type = CX88_VMUX_TELEVISION, | 186 | .type = CX88_VMUX_TELEVISION, |
@@ -179,7 +203,10 @@ struct cx88_board cx88_boards[] = { | |||
179 | // added gpio values thanks to Michal | 203 | // added gpio values thanks to Michal |
180 | // values for PAL from DScaler | 204 | // values for PAL from DScaler |
181 | .name = "MSI TV-@nywhere Master", | 205 | .name = "MSI TV-@nywhere Master", |
182 | .tuner_type = 33, | 206 | .tuner_type = TUNER_MT2032, |
207 | .radio_type = UNSET, | ||
208 | .tuner_addr = ADDR_UNSET, | ||
209 | .radio_addr = ADDR_UNSET, | ||
183 | .tda9887_conf = TDA9887_PRESENT, | 210 | .tda9887_conf = TDA9887_PRESENT, |
184 | .input = {{ | 211 | .input = {{ |
185 | .type = CX88_VMUX_TELEVISION, | 212 | .type = CX88_VMUX_TELEVISION, |
@@ -206,7 +233,10 @@ struct cx88_board cx88_boards[] = { | |||
206 | }, | 233 | }, |
207 | [CX88_BOARD_WINFAST_DV2000] = { | 234 | [CX88_BOARD_WINFAST_DV2000] = { |
208 | .name = "Leadtek Winfast DV2000", | 235 | .name = "Leadtek Winfast DV2000", |
209 | .tuner_type = 38, | 236 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, |
237 | .radio_type = UNSET, | ||
238 | .tuner_addr = ADDR_UNSET, | ||
239 | .radio_addr = ADDR_UNSET, | ||
210 | .tda9887_conf = TDA9887_PRESENT, | 240 | .tda9887_conf = TDA9887_PRESENT, |
211 | .input = {{ | 241 | .input = {{ |
212 | .type = CX88_VMUX_TELEVISION, | 242 | .type = CX88_VMUX_TELEVISION, |
@@ -239,34 +269,40 @@ struct cx88_board cx88_boards[] = { | |||
239 | .gpio3 = 0x02000000, | 269 | .gpio3 = 0x02000000, |
240 | }, | 270 | }, |
241 | }, | 271 | }, |
242 | [CX88_BOARD_LEADTEK_PVR2000] = { | 272 | [CX88_BOARD_LEADTEK_PVR2000] = { |
243 | // gpio values for PAL version from regspy by DScaler | 273 | // gpio values for PAL version from regspy by DScaler |
244 | .name = "Leadtek PVR 2000", | 274 | .name = "Leadtek PVR 2000", |
245 | .tuner_type = 38, | 275 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, |
276 | .radio_type = UNSET, | ||
277 | .tuner_addr = ADDR_UNSET, | ||
278 | .radio_addr = ADDR_UNSET, | ||
246 | .tda9887_conf = TDA9887_PRESENT, | 279 | .tda9887_conf = TDA9887_PRESENT, |
247 | .input = {{ | 280 | .input = {{ |
248 | .type = CX88_VMUX_TELEVISION, | 281 | .type = CX88_VMUX_TELEVISION, |
249 | .vmux = 0, | 282 | .vmux = 0, |
250 | .gpio0 = 0x0000bde6, | 283 | .gpio0 = 0x0000bde2, |
251 | },{ | 284 | },{ |
252 | .type = CX88_VMUX_COMPOSITE1, | 285 | .type = CX88_VMUX_COMPOSITE1, |
253 | .vmux = 1, | 286 | .vmux = 1, |
254 | .gpio0 = 0x0000bde6, | 287 | .gpio0 = 0x0000bde6, |
255 | },{ | 288 | },{ |
256 | .type = CX88_VMUX_SVIDEO, | 289 | .type = CX88_VMUX_SVIDEO, |
257 | .vmux = 2, | 290 | .vmux = 2, |
258 | .gpio0 = 0x0000bde6, | 291 | .gpio0 = 0x0000bde6, |
259 | }}, | 292 | }}, |
260 | .radio = { | 293 | .radio = { |
261 | .type = CX88_RADIO, | 294 | .type = CX88_RADIO, |
262 | .gpio0 = 0x0000bd62, | 295 | .gpio0 = 0x0000bd62, |
263 | }, | 296 | }, |
264 | .blackbird = 1, | 297 | .blackbird = 1, |
265 | }, | 298 | }, |
266 | [CX88_BOARD_IODATA_GVVCP3PCI] = { | 299 | [CX88_BOARD_IODATA_GVVCP3PCI] = { |
267 | .name = "IODATA GV-VCP3/PCI", | 300 | .name = "IODATA GV-VCP3/PCI", |
268 | .tuner_type = TUNER_ABSENT, | 301 | .tuner_type = TUNER_ABSENT, |
269 | .input = {{ | 302 | .radio_type = UNSET, |
303 | .tuner_addr = ADDR_UNSET, | ||
304 | .radio_addr = ADDR_UNSET, | ||
305 | .input = {{ | ||
270 | .type = CX88_VMUX_COMPOSITE1, | 306 | .type = CX88_VMUX_COMPOSITE1, |
271 | .vmux = 0, | 307 | .vmux = 0, |
272 | },{ | 308 | },{ |
@@ -279,7 +315,10 @@ struct cx88_board cx88_boards[] = { | |||
279 | }, | 315 | }, |
280 | [CX88_BOARD_PROLINK_PLAYTVPVR] = { | 316 | [CX88_BOARD_PROLINK_PLAYTVPVR] = { |
281 | .name = "Prolink PlayTV PVR", | 317 | .name = "Prolink PlayTV PVR", |
282 | .tuner_type = 43, | 318 | .tuner_type = TUNER_PHILIPS_FM1236_MK3, |
319 | .radio_type = UNSET, | ||
320 | .tuner_addr = ADDR_UNSET, | ||
321 | .radio_addr = ADDR_UNSET, | ||
283 | .tda9887_conf = TDA9887_PRESENT, | 322 | .tda9887_conf = TDA9887_PRESENT, |
284 | .input = {{ | 323 | .input = {{ |
285 | .type = CX88_VMUX_TELEVISION, | 324 | .type = CX88_VMUX_TELEVISION, |
@@ -301,8 +340,11 @@ struct cx88_board cx88_boards[] = { | |||
301 | }, | 340 | }, |
302 | [CX88_BOARD_ASUS_PVR_416] = { | 341 | [CX88_BOARD_ASUS_PVR_416] = { |
303 | .name = "ASUS PVR-416", | 342 | .name = "ASUS PVR-416", |
304 | .tuner_type = 43, | 343 | .tuner_type = TUNER_PHILIPS_FM1236_MK3, |
305 | .tda9887_conf = TDA9887_PRESENT, | 344 | .radio_type = UNSET, |
345 | .tuner_addr = ADDR_UNSET, | ||
346 | .radio_addr = ADDR_UNSET, | ||
347 | .tda9887_conf = TDA9887_PRESENT, | ||
306 | .input = {{ | 348 | .input = {{ |
307 | .type = CX88_VMUX_TELEVISION, | 349 | .type = CX88_VMUX_TELEVISION, |
308 | .vmux = 0, | 350 | .vmux = 0, |
@@ -320,7 +362,10 @@ struct cx88_board cx88_boards[] = { | |||
320 | }, | 362 | }, |
321 | [CX88_BOARD_MSI_TVANYWHERE] = { | 363 | [CX88_BOARD_MSI_TVANYWHERE] = { |
322 | .name = "MSI TV-@nywhere", | 364 | .name = "MSI TV-@nywhere", |
323 | .tuner_type = 33, | 365 | .tuner_type = TUNER_MT2032, |
366 | .radio_type = UNSET, | ||
367 | .tuner_addr = ADDR_UNSET, | ||
368 | .radio_addr = ADDR_UNSET, | ||
324 | .tda9887_conf = TDA9887_PRESENT, | 369 | .tda9887_conf = TDA9887_PRESENT, |
325 | .input = {{ | 370 | .input = {{ |
326 | .type = CX88_VMUX_TELEVISION, | 371 | .type = CX88_VMUX_TELEVISION, |
@@ -342,6 +387,9 @@ struct cx88_board cx88_boards[] = { | |||
342 | [CX88_BOARD_KWORLD_DVB_T] = { | 387 | [CX88_BOARD_KWORLD_DVB_T] = { |
343 | .name = "KWorld/VStream XPert DVB-T", | 388 | .name = "KWorld/VStream XPert DVB-T", |
344 | .tuner_type = TUNER_ABSENT, | 389 | .tuner_type = TUNER_ABSENT, |
390 | .radio_type = UNSET, | ||
391 | .tuner_addr = ADDR_UNSET, | ||
392 | .radio_addr = ADDR_UNSET, | ||
345 | .input = {{ | 393 | .input = {{ |
346 | .type = CX88_VMUX_COMPOSITE1, | 394 | .type = CX88_VMUX_COMPOSITE1, |
347 | .vmux = 1, | 395 | .vmux = 1, |
@@ -356,8 +404,11 @@ struct cx88_board cx88_boards[] = { | |||
356 | .dvb = 1, | 404 | .dvb = 1, |
357 | }, | 405 | }, |
358 | [CX88_BOARD_DVICO_FUSIONHDTV_DVB_T1] = { | 406 | [CX88_BOARD_DVICO_FUSIONHDTV_DVB_T1] = { |
359 | .name = "DVICO FusionHDTV DVB-T1", | 407 | .name = "DViCO FusionHDTV DVB-T1", |
360 | .tuner_type = TUNER_ABSENT, /* No analog tuner */ | 408 | .tuner_type = TUNER_ABSENT, /* No analog tuner */ |
409 | .radio_type = UNSET, | ||
410 | .tuner_addr = ADDR_UNSET, | ||
411 | .radio_addr = ADDR_UNSET, | ||
361 | .input = {{ | 412 | .input = {{ |
362 | .type = CX88_VMUX_COMPOSITE1, | 413 | .type = CX88_VMUX_COMPOSITE1, |
363 | .vmux = 1, | 414 | .vmux = 1, |
@@ -371,7 +422,10 @@ struct cx88_board cx88_boards[] = { | |||
371 | }, | 422 | }, |
372 | [CX88_BOARD_KWORLD_LTV883] = { | 423 | [CX88_BOARD_KWORLD_LTV883] = { |
373 | .name = "KWorld LTV883RF", | 424 | .name = "KWorld LTV883RF", |
374 | .tuner_type = 48, | 425 | .tuner_type = TUNER_TNF_8831BGFF, |
426 | .radio_type = UNSET, | ||
427 | .tuner_addr = ADDR_UNSET, | ||
428 | .radio_addr = ADDR_UNSET, | ||
375 | .input = {{ | 429 | .input = {{ |
376 | .type = CX88_VMUX_TELEVISION, | 430 | .type = CX88_VMUX_TELEVISION, |
377 | .vmux = 0, | 431 | .vmux = 0, |
@@ -394,9 +448,12 @@ struct cx88_board cx88_boards[] = { | |||
394 | .gpio0 = 0x000007f8, | 448 | .gpio0 = 0x000007f8, |
395 | }, | 449 | }, |
396 | }, | 450 | }, |
397 | [CX88_BOARD_DVICO_FUSIONHDTV_3_GOLD] = { | 451 | [CX88_BOARD_DVICO_FUSIONHDTV_3_GOLD_Q] = { |
398 | .name = "DViCO - FusionHDTV 3 Gold", | 452 | .name = "DViCO FusionHDTV 3 Gold-Q", |
399 | .tuner_type = TUNER_MICROTUNE_4042FI5, | 453 | .tuner_type = TUNER_MICROTUNE_4042FI5, |
454 | .radio_type = UNSET, | ||
455 | .tuner_addr = ADDR_UNSET, | ||
456 | .radio_addr = ADDR_UNSET, | ||
400 | /* | 457 | /* |
401 | GPIO[0] resets DT3302 DTV receiver | 458 | GPIO[0] resets DT3302 DTV receiver |
402 | 0 - reset asserted | 459 | 0 - reset asserted |
@@ -410,6 +467,9 @@ struct cx88_board cx88_boards[] = { | |||
410 | GPIO[3] selects RF input connector on tuner module | 467 | GPIO[3] selects RF input connector on tuner module |
411 | 0 - RF connector labeled CABLE | 468 | 0 - RF connector labeled CABLE |
412 | 1 - RF connector labeled ANT | 469 | 1 - RF connector labeled ANT |
470 | GPIO[4] selects high RF for QAM256 mode | ||
471 | 0 - normal RF | ||
472 | 1 - high RF | ||
413 | */ | 473 | */ |
414 | .input = {{ | 474 | .input = {{ |
415 | .type = CX88_VMUX_TELEVISION, | 475 | .type = CX88_VMUX_TELEVISION, |
@@ -428,25 +488,29 @@ struct cx88_board cx88_boards[] = { | |||
428 | .vmux = 2, | 488 | .vmux = 2, |
429 | .gpio0 = 0x0f00, | 489 | .gpio0 = 0x0f00, |
430 | }}, | 490 | }}, |
431 | #if 0 | 491 | .dvb = 1, |
432 | .ts = { | ||
433 | .type = CX88_TS, | ||
434 | .gpio0 = 0x00000f01, /* Hooked to tuner reset bit */ | ||
435 | } | ||
436 | #endif | ||
437 | }, | 492 | }, |
438 | [CX88_BOARD_HAUPPAUGE_DVB_T1] = { | 493 | [CX88_BOARD_HAUPPAUGE_DVB_T1] = { |
439 | .name = "Hauppauge Nova-T DVB-T", | 494 | .name = "Hauppauge Nova-T DVB-T", |
440 | .tuner_type = TUNER_ABSENT, | 495 | .tuner_type = TUNER_ABSENT, |
441 | .input = {{ | 496 | .radio_type = UNSET, |
497 | .tuner_addr = ADDR_UNSET, | ||
498 | .radio_addr = ADDR_UNSET, | ||
499 | .input = {{ | ||
442 | .type = CX88_VMUX_DVB, | 500 | .type = CX88_VMUX_DVB, |
443 | .vmux = 0, | 501 | .vmux = 0, |
502 | },{ | ||
503 | .type = CX88_VMUX_SVIDEO, | ||
504 | .vmux = 2, | ||
444 | }}, | 505 | }}, |
445 | .dvb = 1, | 506 | .dvb = 1, |
446 | }, | 507 | }, |
447 | [CX88_BOARD_CONEXANT_DVB_T1] = { | 508 | [CX88_BOARD_CONEXANT_DVB_T1] = { |
448 | .name = "Conexant DVB-T reference design", | 509 | .name = "Conexant DVB-T reference design", |
449 | .tuner_type = TUNER_ABSENT, | 510 | .tuner_type = TUNER_ABSENT, |
511 | .radio_type = UNSET, | ||
512 | .tuner_addr = ADDR_UNSET, | ||
513 | .radio_addr = ADDR_UNSET, | ||
450 | .input = {{ | 514 | .input = {{ |
451 | .type = CX88_VMUX_DVB, | 515 | .type = CX88_VMUX_DVB, |
452 | .vmux = 0, | 516 | .vmux = 0, |
@@ -456,6 +520,9 @@ struct cx88_board cx88_boards[] = { | |||
456 | [CX88_BOARD_PROVIDEO_PV259] = { | 520 | [CX88_BOARD_PROVIDEO_PV259] = { |
457 | .name = "Provideo PV259", | 521 | .name = "Provideo PV259", |
458 | .tuner_type = TUNER_PHILIPS_FQ1216ME, | 522 | .tuner_type = TUNER_PHILIPS_FQ1216ME, |
523 | .radio_type = UNSET, | ||
524 | .tuner_addr = ADDR_UNSET, | ||
525 | .radio_addr = ADDR_UNSET, | ||
459 | .input = {{ | 526 | .input = {{ |
460 | .type = CX88_VMUX_TELEVISION, | 527 | .type = CX88_VMUX_TELEVISION, |
461 | .vmux = 0, | 528 | .vmux = 0, |
@@ -463,8 +530,11 @@ struct cx88_board cx88_boards[] = { | |||
463 | .blackbird = 1, | 530 | .blackbird = 1, |
464 | }, | 531 | }, |
465 | [CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_PLUS] = { | 532 | [CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_PLUS] = { |
466 | .name = "DVICO FusionHDTV DVB-T Plus", | 533 | .name = "DViCO FusionHDTV DVB-T Plus", |
467 | .tuner_type = TUNER_ABSENT, /* No analog tuner */ | 534 | .tuner_type = TUNER_ABSENT, /* No analog tuner */ |
535 | .radio_type = UNSET, | ||
536 | .tuner_addr = ADDR_UNSET, | ||
537 | .radio_addr = ADDR_UNSET, | ||
468 | .input = {{ | 538 | .input = {{ |
469 | .type = CX88_VMUX_COMPOSITE1, | 539 | .type = CX88_VMUX_COMPOSITE1, |
470 | .vmux = 1, | 540 | .vmux = 1, |
@@ -479,6 +549,9 @@ struct cx88_board cx88_boards[] = { | |||
479 | [CX88_BOARD_DNTV_LIVE_DVB_T] = { | 549 | [CX88_BOARD_DNTV_LIVE_DVB_T] = { |
480 | .name = "digitalnow DNTV Live! DVB-T", | 550 | .name = "digitalnow DNTV Live! DVB-T", |
481 | .tuner_type = TUNER_ABSENT, | 551 | .tuner_type = TUNER_ABSENT, |
552 | .radio_type = UNSET, | ||
553 | .tuner_addr = ADDR_UNSET, | ||
554 | .radio_addr = ADDR_UNSET, | ||
482 | .input = {{ | 555 | .input = {{ |
483 | .type = CX88_VMUX_COMPOSITE1, | 556 | .type = CX88_VMUX_COMPOSITE1, |
484 | .vmux = 1, | 557 | .vmux = 1, |
@@ -495,6 +568,9 @@ struct cx88_board cx88_boards[] = { | |||
495 | [CX88_BOARD_PCHDTV_HD3000] = { | 568 | [CX88_BOARD_PCHDTV_HD3000] = { |
496 | .name = "pcHDTV HD3000 HDTV", | 569 | .name = "pcHDTV HD3000 HDTV", |
497 | .tuner_type = TUNER_THOMSON_DTT7610, | 570 | .tuner_type = TUNER_THOMSON_DTT7610, |
571 | .radio_type = UNSET, | ||
572 | .tuner_addr = ADDR_UNSET, | ||
573 | .radio_addr = ADDR_UNSET, | ||
498 | .input = {{ | 574 | .input = {{ |
499 | .type = CX88_VMUX_TELEVISION, | 575 | .type = CX88_VMUX_TELEVISION, |
500 | .vmux = 0, | 576 | .vmux = 0, |
@@ -530,8 +606,11 @@ struct cx88_board cx88_boards[] = { | |||
530 | [CX88_BOARD_HAUPPAUGE_ROSLYN] = { | 606 | [CX88_BOARD_HAUPPAUGE_ROSLYN] = { |
531 | // entry added by Kaustubh D. Bhalerao <bhalerao.1@osu.edu> | 607 | // entry added by Kaustubh D. Bhalerao <bhalerao.1@osu.edu> |
532 | // GPIO values obtained from regspy, courtesy Sean Covel | 608 | // GPIO values obtained from regspy, courtesy Sean Covel |
533 | .name = "Hauppauge WinTV 28xxx (Roslyn) models", | 609 | .name = "Hauppauge WinTV 28xxx (Roslyn) models", |
534 | .tuner_type = UNSET, | 610 | .tuner_type = UNSET, |
611 | .radio_type = UNSET, | ||
612 | .tuner_addr = ADDR_UNSET, | ||
613 | .radio_addr = ADDR_UNSET, | ||
535 | .input = {{ | 614 | .input = {{ |
536 | .type = CX88_VMUX_TELEVISION, | 615 | .type = CX88_VMUX_TELEVISION, |
537 | .vmux = 0, | 616 | .vmux = 0, |
@@ -559,33 +638,37 @@ struct cx88_board cx88_boards[] = { | |||
559 | .blackbird = 1, | 638 | .blackbird = 1, |
560 | }, | 639 | }, |
561 | [CX88_BOARD_DIGITALLOGIC_MEC] = { | 640 | [CX88_BOARD_DIGITALLOGIC_MEC] = { |
562 | /* params copied over from Leadtek PVR 2000 */ | ||
563 | .name = "Digital-Logic MICROSPACE Entertainment Center (MEC)", | 641 | .name = "Digital-Logic MICROSPACE Entertainment Center (MEC)", |
564 | /* not sure yet about the tuner type */ | 642 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, |
565 | .tuner_type = 38, | 643 | .radio_type = UNSET, |
644 | .tuner_addr = ADDR_UNSET, | ||
645 | .radio_addr = ADDR_UNSET, | ||
566 | .tda9887_conf = TDA9887_PRESENT, | 646 | .tda9887_conf = TDA9887_PRESENT, |
567 | .input = {{ | 647 | .input = {{ |
568 | .type = CX88_VMUX_TELEVISION, | 648 | .type = CX88_VMUX_TELEVISION, |
569 | .vmux = 0, | 649 | .vmux = 0, |
570 | .gpio0 = 0x0000bde6, | 650 | .gpio0 = 0x00009d80, |
571 | },{ | 651 | },{ |
572 | .type = CX88_VMUX_COMPOSITE1, | 652 | .type = CX88_VMUX_COMPOSITE1, |
573 | .vmux = 1, | 653 | .vmux = 1, |
574 | .gpio0 = 0x0000bde6, | 654 | .gpio0 = 0x00009d76, |
575 | },{ | 655 | },{ |
576 | .type = CX88_VMUX_SVIDEO, | 656 | .type = CX88_VMUX_SVIDEO, |
577 | .vmux = 2, | 657 | .vmux = 2, |
578 | .gpio0 = 0x0000bde6, | 658 | .gpio0 = 0x00009d76, |
579 | }}, | 659 | }}, |
580 | .radio = { | 660 | .radio = { |
581 | .type = CX88_RADIO, | 661 | .type = CX88_RADIO, |
582 | .gpio0 = 0x0000bd62, | 662 | .gpio0 = 0x00009d00, |
583 | }, | 663 | }, |
584 | .blackbird = 1, | 664 | .blackbird = 1, |
585 | }, | 665 | }, |
586 | [CX88_BOARD_IODATA_GVBCTV7E] = { | 666 | [CX88_BOARD_IODATA_GVBCTV7E] = { |
587 | .name = "IODATA GV/BCTV7E", | 667 | .name = "IODATA GV/BCTV7E", |
588 | .tuner_type = TUNER_PHILIPS_FQ1286, | 668 | .tuner_type = TUNER_PHILIPS_FQ1286, |
669 | .radio_type = UNSET, | ||
670 | .tuner_addr = ADDR_UNSET, | ||
671 | .radio_addr = ADDR_UNSET, | ||
589 | .tda9887_conf = TDA9887_PRESENT, | 672 | .tda9887_conf = TDA9887_PRESENT, |
590 | .input = {{ | 673 | .input = {{ |
591 | .type = CX88_VMUX_TELEVISION, | 674 | .type = CX88_VMUX_TELEVISION, |
@@ -601,6 +684,102 @@ struct cx88_board cx88_boards[] = { | |||
601 | .gpio1 = 0x0000e07f, | 684 | .gpio1 = 0x0000e07f, |
602 | }} | 685 | }} |
603 | }, | 686 | }, |
687 | [CX88_BOARD_PIXELVIEW_PLAYTV_ULTRA_PRO] = { | ||
688 | .name = "PixelView PlayTV Ultra Pro (Stereo)", | ||
689 | /* May be also TUNER_YMEC_TVF_5533MF for NTSC/M or PAL/M */ | ||
690 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, | ||
691 | .radio_type = UNSET, | ||
692 | .tuner_addr = ADDR_UNSET, | ||
693 | .radio_addr = ADDR_UNSET, | ||
694 | .input = {{ | ||
695 | .type = CX88_VMUX_TELEVISION, | ||
696 | .vmux = 0, | ||
697 | .gpio0 = 0xbf61, /* internal decoder */ | ||
698 | },{ | ||
699 | .type = CX88_VMUX_COMPOSITE1, | ||
700 | .vmux = 1, | ||
701 | .gpio0 = 0xbf63, | ||
702 | },{ | ||
703 | .type = CX88_VMUX_SVIDEO, | ||
704 | .vmux = 2, | ||
705 | .gpio0 = 0xbf63, | ||
706 | }}, | ||
707 | .radio = { | ||
708 | .type = CX88_RADIO, | ||
709 | .gpio0 = 0xbf60, | ||
710 | }, | ||
711 | }, | ||
712 | [CX88_BOARD_DVICO_FUSIONHDTV_3_GOLD_T] = { | ||
713 | .name = "DViCO FusionHDTV 3 Gold-T", | ||
714 | .tuner_type = TUNER_THOMSON_DTT7611, | ||
715 | .radio_type = UNSET, | ||
716 | .tuner_addr = ADDR_UNSET, | ||
717 | .radio_addr = ADDR_UNSET, | ||
718 | /* See DViCO FusionHDTV 3 Gold-Q for GPIO documentation. */ | ||
719 | .input = {{ | ||
720 | .type = CX88_VMUX_TELEVISION, | ||
721 | .vmux = 0, | ||
722 | .gpio0 = 0x0f0d, | ||
723 | },{ | ||
724 | .type = CX88_VMUX_COMPOSITE1, | ||
725 | .vmux = 1, | ||
726 | .gpio0 = 0x0f00, | ||
727 | },{ | ||
728 | .type = CX88_VMUX_SVIDEO, | ||
729 | .vmux = 2, | ||
730 | .gpio0 = 0x0f00, | ||
731 | }}, | ||
732 | .dvb = 1, | ||
733 | }, | ||
734 | [CX88_BOARD_ADSTECH_DVB_T_PCI] = { | ||
735 | .name = "ADS Tech Instant TV DVB-T PCI", | ||
736 | .tuner_type = TUNER_ABSENT, | ||
737 | .radio_type = UNSET, | ||
738 | .tuner_addr = ADDR_UNSET, | ||
739 | .radio_addr = ADDR_UNSET, | ||
740 | .input = {{ | ||
741 | .type = CX88_VMUX_COMPOSITE1, | ||
742 | .vmux = 1, | ||
743 | .gpio0 = 0x0700, | ||
744 | .gpio2 = 0x0101, | ||
745 | },{ | ||
746 | .type = CX88_VMUX_SVIDEO, | ||
747 | .vmux = 2, | ||
748 | .gpio0 = 0x0700, | ||
749 | .gpio2 = 0x0101, | ||
750 | }}, | ||
751 | .dvb = 1, | ||
752 | }, | ||
753 | [CX88_BOARD_TERRATEC_CINERGY_1400_DVB_T1] = { | ||
754 | .name = "TerraTec Cinergy 1400 DVB-T", | ||
755 | .tuner_type = TUNER_ABSENT, | ||
756 | .input = {{ | ||
757 | .type = CX88_VMUX_DVB, | ||
758 | .vmux = 0, | ||
759 | }}, | ||
760 | .dvb = 1, | ||
761 | }, | ||
762 | [CX88_BOARD_DVICO_FUSIONHDTV_5_GOLD] = { | ||
763 | .name = "DViCO FusionHDTV 5 Gold", | ||
764 | .tuner_type = TUNER_LG_TDVS_H062F, | ||
765 | .radio_type = UNSET, | ||
766 | .tuner_addr = ADDR_UNSET, | ||
767 | .radio_addr = ADDR_UNSET, | ||
768 | /* See DViCO FusionHDTV 3 Gold-Q for GPIO documentation. */ | ||
769 | .input = {{ | ||
770 | .type = CX88_VMUX_TELEVISION, | ||
771 | .vmux = 0, | ||
772 | .gpio0 = 0x0f0d, | ||
773 | },{ | ||
774 | .type = CX88_VMUX_COMPOSITE1, | ||
775 | .vmux = 1, | ||
776 | .gpio0 = 0x0f00, | ||
777 | },{ | ||
778 | .type = CX88_VMUX_SVIDEO, | ||
779 | .vmux = 2, | ||
780 | .gpio0 = 0x0f00, | ||
781 | }}, | ||
782 | }, | ||
604 | }; | 783 | }; |
605 | const unsigned int cx88_bcount = ARRAY_SIZE(cx88_boards); | 784 | const unsigned int cx88_bcount = ARRAY_SIZE(cx88_boards); |
606 | 785 | ||
@@ -671,7 +850,11 @@ struct cx88_subid cx88_subids[] = { | |||
671 | },{ | 850 | },{ |
672 | .subvendor = 0x18ac, | 851 | .subvendor = 0x18ac, |
673 | .subdevice = 0xd810, | 852 | .subdevice = 0xd810, |
674 | .card = CX88_BOARD_DVICO_FUSIONHDTV_3_GOLD, | 853 | .card = CX88_BOARD_DVICO_FUSIONHDTV_3_GOLD_Q, |
854 | },{ | ||
855 | .subvendor = 0x18ac, | ||
856 | .subdevice = 0xd820, | ||
857 | .card = CX88_BOARD_DVICO_FUSIONHDTV_3_GOLD_T, | ||
675 | },{ | 858 | },{ |
676 | .subvendor = 0x18AC, | 859 | .subvendor = 0x18AC, |
677 | .subdevice = 0xDB00, | 860 | .subdevice = 0xDB00, |
@@ -716,7 +899,19 @@ struct cx88_subid cx88_subids[] = { | |||
716 | .subvendor = 0x10fc, | 899 | .subvendor = 0x10fc, |
717 | .subdevice = 0xd035, | 900 | .subdevice = 0xd035, |
718 | .card = CX88_BOARD_IODATA_GVBCTV7E, | 901 | .card = CX88_BOARD_IODATA_GVBCTV7E, |
719 | } | 902 | },{ |
903 | .subvendor = 0x1421, | ||
904 | .subdevice = 0x0334, | ||
905 | .card = CX88_BOARD_ADSTECH_DVB_T_PCI, | ||
906 | },{ | ||
907 | .subvendor = 0x153b, | ||
908 | .subdevice = 0x1166, | ||
909 | .card = CX88_BOARD_TERRATEC_CINERGY_1400_DVB_T1, | ||
910 | },{ | ||
911 | .subvendor = 0x18ac, | ||
912 | .subdevice = 0xd500, | ||
913 | .card = CX88_BOARD_DVICO_FUSIONHDTV_5_GOLD, | ||
914 | }, | ||
720 | }; | 915 | }; |
721 | const unsigned int cx88_idcount = ARRAY_SIZE(cx88_subids); | 916 | const unsigned int cx88_idcount = ARRAY_SIZE(cx88_subids); |
722 | 917 | ||
@@ -935,4 +1130,5 @@ EXPORT_SYMBOL(cx88_card_setup); | |||
935 | * Local variables: | 1130 | * Local variables: |
936 | * c-basic-offset: 8 | 1131 | * c-basic-offset: 8 |
937 | * End: | 1132 | * End: |
1133 | * kate: eol "unix"; indent-width 3; remove-trailing-space on; replace-trailing-space-save on; tab-width 8; replace-tabs off; space-indent off; mixed-indent off | ||
938 | */ | 1134 | */ |