diff options
author | Andy Walls <awalls@radix.net> | 2008-10-04 19:28:40 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-10-12 07:37:16 -0400 |
commit | 9eee4fb69ecbe6a8a25378e801a3621ef0146fa3 (patch) | |
tree | 782c7c1995f2def4544eb082db0e9b1623e5f737 | |
parent | f1918fa284afaa46201b9c20a7bbeacd8db0c977 (diff) |
V4L/DVB (9131): cx18: Add entries for the Leadtek PVR2100 and Toshiba Qosmio DVB-T/Analog
cx18: Add entries for the Leadtek PVR2100 and Toshiba Qosmio DVB-T/Analog
capture cards. Both cards are hybrids cards, but no digital capture
functionality has been added yet. These entries are a first guess at the card
entries to get analog working, given the information available. Terry Wu
<terrywu at leadtek.com.tw> provided a pointer to information for the PVR2100.
Martin Juhl <mj at casalogic.dk>, an owner of the Toshiba DVB-T/Analog tuner
card, provided the DDR timing information from his Windows inf file.
Signed-off-by: Andy Walls <awalls@radix.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r-- | drivers/media/video/cx18/cx18-cards.c | 99 | ||||
-rw-r--r-- | drivers/media/video/cx18/cx18-driver.c | 2 | ||||
-rw-r--r-- | drivers/media/video/cx18/cx18-driver.h | 6 |
3 files changed, 106 insertions, 1 deletions
diff --git a/drivers/media/video/cx18/cx18-cards.c b/drivers/media/video/cx18/cx18-cards.c index 3cb9734ec07b..5efe01ebe9db 100644 --- a/drivers/media/video/cx18/cx18-cards.c +++ b/drivers/media/video/cx18/cx18-cards.c | |||
@@ -292,12 +292,111 @@ static const struct cx18_card cx18_card_cnxt_raptor_pal = { | |||
292 | 292 | ||
293 | /* ------------------------------------------------------------------------- */ | 293 | /* ------------------------------------------------------------------------- */ |
294 | 294 | ||
295 | /* Toshiba Qosmio laptop internal DVB-T/Analog Hybrid Tuner */ | ||
296 | |||
297 | static const struct cx18_card_pci_info cx18_pci_toshiba_qosmio_dvbt[] = { | ||
298 | { PCI_DEVICE_ID_CX23418, CX18_PCI_ID_TOSHIBA, 0x0110 }, | ||
299 | { 0, 0, 0 } | ||
300 | }; | ||
301 | |||
302 | static const struct cx18_card cx18_card_toshiba_qosmio_dvbt = { | ||
303 | .type = CX18_CARD_TOSHIBA_QOSMIO_DVBT, | ||
304 | .name = "Toshiba Qosmio DVB-T/Analog", | ||
305 | .comment = "Experimenters and photos needed for device to work well.\n" | ||
306 | "\tTo help, mail the ivtv-devel list (www.ivtvdriver.org).\n", | ||
307 | .v4l2_capabilities = CX18_CAP_ENCODER, | ||
308 | .hw_audio_ctrl = CX18_HW_CX23418, | ||
309 | .hw_all = CX18_HW_TUNER, | ||
310 | .video_inputs = { | ||
311 | { CX18_CARD_INPUT_VID_TUNER, 0, CX18_AV_COMPOSITE6 }, | ||
312 | { CX18_CARD_INPUT_SVIDEO1, 1, | ||
313 | CX18_AV_SVIDEO_LUMA3 | CX18_AV_SVIDEO_CHROMA4 }, | ||
314 | { CX18_CARD_INPUT_COMPOSITE1, 1, CX18_AV_COMPOSITE1 }, | ||
315 | }, | ||
316 | .audio_inputs = { | ||
317 | { CX18_CARD_INPUT_AUD_TUNER, CX18_AV_AUDIO5, 0 }, | ||
318 | { CX18_CARD_INPUT_LINE_IN1, CX18_AV_AUDIO_SERIAL1, 1 }, | ||
319 | }, | ||
320 | .tuners = { | ||
321 | { .std = V4L2_STD_ALL, .tuner = TUNER_XC2028 }, | ||
322 | }, | ||
323 | .ddr = { | ||
324 | .chip_config = 0x202, | ||
325 | .refresh = 0x3bb, | ||
326 | .timing1 = 0x33320a63, | ||
327 | .timing2 = 0x0a, | ||
328 | .tune_lane = 0, | ||
329 | .initial_emrs = 0x42, | ||
330 | }, | ||
331 | .xceive_pin = 15, | ||
332 | .pci_list = cx18_pci_toshiba_qosmio_dvbt, | ||
333 | .i2c = &cx18_i2c_std, | ||
334 | }; | ||
335 | |||
336 | /* ------------------------------------------------------------------------- */ | ||
337 | |||
338 | /* Leadtek WinFast PVR2100 */ | ||
339 | |||
340 | static const struct cx18_card_pci_info cx18_pci_leadtek_pvr2100[] = { | ||
341 | { PCI_DEVICE_ID_CX23418, CX18_PCI_ID_LEADTEK, 0x6f27 }, | ||
342 | { 0, 0, 0 } | ||
343 | }; | ||
344 | |||
345 | static const struct cx18_card cx18_card_leadtek_pvr2100 = { | ||
346 | .type = CX18_CARD_LEADTEK_PVR2100, | ||
347 | .name = "Leadtek WinFast PVR2100", | ||
348 | .comment = "Experimenters and photos needed for device to work well.\n" | ||
349 | "\tTo help, mail the ivtv-devel list (www.ivtvdriver.org).\n", | ||
350 | .v4l2_capabilities = CX18_CAP_ENCODER, | ||
351 | .hw_audio_ctrl = CX18_HW_CX23418, | ||
352 | .hw_muxer = CX18_HW_GPIO, | ||
353 | .hw_all = CX18_HW_TUNER | CX18_HW_GPIO, | ||
354 | .video_inputs = { | ||
355 | { CX18_CARD_INPUT_VID_TUNER, 0, CX18_AV_COMPOSITE2 }, | ||
356 | { CX18_CARD_INPUT_SVIDEO1, 1, | ||
357 | CX18_AV_SVIDEO_LUMA3 | CX18_AV_SVIDEO_CHROMA4 }, | ||
358 | { CX18_CARD_INPUT_COMPOSITE1, 1, CX18_AV_COMPOSITE7 }, | ||
359 | }, | ||
360 | .audio_inputs = { | ||
361 | { CX18_CARD_INPUT_AUD_TUNER, CX18_AV_AUDIO5, 0 }, | ||
362 | { CX18_CARD_INPUT_LINE_IN1, CX18_AV_AUDIO_SERIAL1, 1 }, | ||
363 | }, | ||
364 | .tuners = { | ||
365 | /* XC3028 tuner */ | ||
366 | { .std = V4L2_STD_ALL, .tuner = TUNER_XC2028 }, | ||
367 | }, | ||
368 | .radio_input = { CX18_CARD_INPUT_AUD_TUNER, CX18_AV_AUDIO5, 2 }, | ||
369 | .ddr = { | ||
370 | /* | ||
371 | * Pointer to proper DDR config values provided by | ||
372 | * Terry Wu <terrywu at leadtek.com.tw> | ||
373 | */ | ||
374 | .chip_config = 0x303, | ||
375 | .refresh = 0x3bb, | ||
376 | .timing1 = 0x24220e83, | ||
377 | .timing2 = 0x1f, | ||
378 | .tune_lane = 0, | ||
379 | .initial_emrs = 0x2, | ||
380 | }, | ||
381 | .gpio_init.initial_value = 0x6, | ||
382 | .gpio_init.direction = 0x7, | ||
383 | .gpio_audio_input = { .mask = 0x7, | ||
384 | .tuner = 0x6, .linein = 0x2, .radio = 0x2 }, | ||
385 | .xceive_pin = 15, | ||
386 | .pci_list = cx18_pci_leadtek_pvr2100, | ||
387 | .i2c = &cx18_i2c_std, | ||
388 | }; | ||
389 | |||
390 | /* ------------------------------------------------------------------------- */ | ||
391 | |||
295 | static const struct cx18_card *cx18_card_list[] = { | 392 | static const struct cx18_card *cx18_card_list[] = { |
296 | &cx18_card_hvr1600_esmt, | 393 | &cx18_card_hvr1600_esmt, |
297 | &cx18_card_hvr1600_samsung, | 394 | &cx18_card_hvr1600_samsung, |
298 | &cx18_card_h900, | 395 | &cx18_card_h900, |
299 | &cx18_card_mpc718, | 396 | &cx18_card_mpc718, |
300 | &cx18_card_cnxt_raptor_pal, | 397 | &cx18_card_cnxt_raptor_pal, |
398 | &cx18_card_toshiba_qosmio_dvbt, | ||
399 | &cx18_card_leadtek_pvr2100, | ||
301 | }; | 400 | }; |
302 | 401 | ||
303 | const struct cx18_card *cx18_get_card(u16 index) | 402 | const struct cx18_card *cx18_get_card(u16 index) |
diff --git a/drivers/media/video/cx18/cx18-driver.c b/drivers/media/video/cx18/cx18-driver.c index df5531709ae5..6bf9ac8c4e70 100644 --- a/drivers/media/video/cx18/cx18-driver.c +++ b/drivers/media/video/cx18/cx18-driver.c | |||
@@ -130,6 +130,8 @@ MODULE_PARM_DESC(cardtype, | |||
130 | "\t\t\t 3 = Compro VideoMate H900\n" | 130 | "\t\t\t 3 = Compro VideoMate H900\n" |
131 | "\t\t\t 4 = Yuan MPC718\n" | 131 | "\t\t\t 4 = Yuan MPC718\n" |
132 | "\t\t\t 5 = Conexant Raptor PAL/SECAM\n" | 132 | "\t\t\t 5 = Conexant Raptor PAL/SECAM\n" |
133 | "\t\t\t 6 = Toshiba Qosmio DVB-T/Analog\n" | ||
134 | "\t\t\t 7 = Leadtek WinFast PVR2100\n" | ||
133 | "\t\t\t 0 = Autodetect (default)\n" | 135 | "\t\t\t 0 = Autodetect (default)\n" |
134 | "\t\t\t-1 = Ignore this card\n\t\t"); | 136 | "\t\t\t-1 = Ignore this card\n\t\t"); |
135 | MODULE_PARM_DESC(pal, "Set PAL standard: B, G, H, D, K, I, M, N, Nc, 60"); | 137 | MODULE_PARM_DESC(pal, "Set PAL standard: B, G, H, D, K, I, M, N, Nc, 60"); |
diff --git a/drivers/media/video/cx18/cx18-driver.h b/drivers/media/video/cx18/cx18-driver.h index 80f5f563d4fc..fa8be0731a3f 100644 --- a/drivers/media/video/cx18/cx18-driver.h +++ b/drivers/media/video/cx18/cx18-driver.h | |||
@@ -79,7 +79,9 @@ | |||
79 | #define CX18_CARD_COMPRO_H900 2 /* Compro VideoMate H900 */ | 79 | #define CX18_CARD_COMPRO_H900 2 /* Compro VideoMate H900 */ |
80 | #define CX18_CARD_YUAN_MPC718 3 /* Yuan MPC718 */ | 80 | #define CX18_CARD_YUAN_MPC718 3 /* Yuan MPC718 */ |
81 | #define CX18_CARD_CNXT_RAPTOR_PAL 4 /* Conexant Raptor PAL */ | 81 | #define CX18_CARD_CNXT_RAPTOR_PAL 4 /* Conexant Raptor PAL */ |
82 | #define CX18_CARD_LAST 4 | 82 | #define CX18_CARD_TOSHIBA_QOSMIO_DVBT 5 /* Toshiba Qosmio Interal DVB-T/Analog*/ |
83 | #define CX18_CARD_LEADTEK_PVR2100 6 /* Leadtek WinFast PVR2100 */ | ||
84 | #define CX18_CARD_LAST 6 | ||
83 | 85 | ||
84 | #define CX18_ENC_STREAM_TYPE_MPG 0 | 86 | #define CX18_ENC_STREAM_TYPE_MPG 0 |
85 | #define CX18_ENC_STREAM_TYPE_TS 1 | 87 | #define CX18_ENC_STREAM_TYPE_TS 1 |
@@ -99,6 +101,8 @@ | |||
99 | #define CX18_PCI_ID_COMPRO 0x185b | 101 | #define CX18_PCI_ID_COMPRO 0x185b |
100 | #define CX18_PCI_ID_YUAN 0x12ab | 102 | #define CX18_PCI_ID_YUAN 0x12ab |
101 | #define CX18_PCI_ID_CONEXANT 0x14f1 | 103 | #define CX18_PCI_ID_CONEXANT 0x14f1 |
104 | #define CX18_PCI_ID_TOSHIBA 0x1179 | ||
105 | #define CX18_PCI_ID_LEADTEK 0x107D | ||
102 | 106 | ||
103 | /* ======================================================================== */ | 107 | /* ======================================================================== */ |
104 | /* ========================== START USER SETTABLE DMA VARIABLES =========== */ | 108 | /* ========================== START USER SETTABLE DMA VARIABLES =========== */ |