diff options
author | Andy Walls <awalls@radix.net> | 2009-06-09 19:37:24 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-06-16 18:07:33 -0400 |
commit | 9d5af8629255ef6e62481ee7dea8c6787facc579 (patch) | |
tree | 96bad945bb9cefac8e951182a64b161978ab3c94 /drivers/media | |
parent | 3b27740c7de0fd59032c723ad326926c97383e95 (diff) |
V4L/DVB (11950): cx18: Split LeadTek PVR2100 and DVR3100 H into 2 separate card entries
Signed-off-by: Andy Walls <awalls@radix.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/video/cx18/cx18-cards.c | 61 | ||||
-rw-r--r-- | drivers/media/video/cx18/cx18-driver.c | 3 | ||||
-rw-r--r-- | drivers/media/video/cx18/cx18-driver.h | 5 |
3 files changed, 63 insertions, 6 deletions
diff --git a/drivers/media/video/cx18/cx18-cards.c b/drivers/media/video/cx18/cx18-cards.c index 9bc22183784..ae631aa2cd3 100644 --- a/drivers/media/video/cx18/cx18-cards.c +++ b/drivers/media/video/cx18/cx18-cards.c | |||
@@ -340,13 +340,12 @@ static const struct cx18_card cx18_card_toshiba_qosmio_dvbt = { | |||
340 | 340 | ||
341 | static const struct cx18_card_pci_info cx18_pci_leadtek_pvr2100[] = { | 341 | static const struct cx18_card_pci_info cx18_pci_leadtek_pvr2100[] = { |
342 | { PCI_DEVICE_ID_CX23418, CX18_PCI_ID_LEADTEK, 0x6f27 }, /* PVR2100 */ | 342 | { PCI_DEVICE_ID_CX23418, CX18_PCI_ID_LEADTEK, 0x6f27 }, /* PVR2100 */ |
343 | { PCI_DEVICE_ID_CX23418, CX18_PCI_ID_LEADTEK, 0x6690 }, /* DVR3100 H */ | ||
344 | { 0, 0, 0 } | 343 | { 0, 0, 0 } |
345 | }; | 344 | }; |
346 | 345 | ||
347 | static const struct cx18_card cx18_card_leadtek_pvr2100 = { | 346 | static const struct cx18_card cx18_card_leadtek_pvr2100 = { |
348 | .type = CX18_CARD_LEADTEK_PVR2100, | 347 | .type = CX18_CARD_LEADTEK_PVR2100, |
349 | .name = "Leadtek WinFast PVR2100/DVR3100 H", | 348 | .name = "Leadtek WinFast PVR2100", |
350 | .comment = "Experimenters and photos needed for device to work well.\n" | 349 | .comment = "Experimenters and photos needed for device to work well.\n" |
351 | "\tTo help, mail the ivtv-devel list (www.ivtvdriver.org).\n", | 350 | "\tTo help, mail the ivtv-devel list (www.ivtvdriver.org).\n", |
352 | .v4l2_capabilities = CX18_CAP_ENCODER, | 351 | .v4l2_capabilities = CX18_CAP_ENCODER, |
@@ -365,7 +364,7 @@ static const struct cx18_card cx18_card_leadtek_pvr2100 = { | |||
365 | { CX18_CARD_INPUT_LINE_IN1, CX18_AV_AUDIO_SERIAL1, 1 }, | 364 | { CX18_CARD_INPUT_LINE_IN1, CX18_AV_AUDIO_SERIAL1, 1 }, |
366 | }, | 365 | }, |
367 | .tuners = { | 366 | .tuners = { |
368 | /* XC3028 tuner */ | 367 | /* XC2028 tuner */ |
369 | { .std = V4L2_STD_ALL, .tuner = TUNER_XC2028 }, | 368 | { .std = V4L2_STD_ALL, .tuner = TUNER_XC2028 }, |
370 | }, | 369 | }, |
371 | .radio_input = { CX18_CARD_INPUT_AUD_TUNER, CX18_AV_AUDIO5, 2 }, | 370 | .radio_input = { CX18_CARD_INPUT_AUD_TUNER, CX18_AV_AUDIO5, 2 }, |
@@ -392,6 +391,61 @@ static const struct cx18_card cx18_card_leadtek_pvr2100 = { | |||
392 | 391 | ||
393 | /* ------------------------------------------------------------------------- */ | 392 | /* ------------------------------------------------------------------------- */ |
394 | 393 | ||
394 | /* Leadtek WinFast DVR3100 H */ | ||
395 | |||
396 | static const struct cx18_card_pci_info cx18_pci_leadtek_dvr3100h[] = { | ||
397 | { PCI_DEVICE_ID_CX23418, CX18_PCI_ID_LEADTEK, 0x6690 }, /* DVR3100 H */ | ||
398 | { 0, 0, 0 } | ||
399 | }; | ||
400 | |||
401 | static const struct cx18_card cx18_card_leadtek_dvr3100h = { | ||
402 | .type = CX18_CARD_LEADTEK_DVR3100H, | ||
403 | .name = "Leadtek WinFast DVR3100 H", | ||
404 | .comment = "Experimenters and photos needed for device to work well.\n" | ||
405 | "\tTo help, mail the ivtv-devel list (www.ivtvdriver.org).\n", | ||
406 | .v4l2_capabilities = CX18_CAP_ENCODER, | ||
407 | .hw_audio_ctrl = CX18_HW_418_AV, | ||
408 | .hw_muxer = CX18_HW_GPIO_MUX, | ||
409 | .hw_all = CX18_HW_418_AV | CX18_HW_TUNER | CX18_HW_GPIO_MUX | | ||
410 | CX18_HW_GPIO_RESET_CTRL, | ||
411 | .video_inputs = { | ||
412 | { CX18_CARD_INPUT_VID_TUNER, 0, CX18_AV_COMPOSITE2 }, | ||
413 | { CX18_CARD_INPUT_SVIDEO1, 1, | ||
414 | CX18_AV_SVIDEO_LUMA3 | CX18_AV_SVIDEO_CHROMA4 }, | ||
415 | { CX18_CARD_INPUT_COMPOSITE1, 1, CX18_AV_COMPOSITE7 }, | ||
416 | }, | ||
417 | .audio_inputs = { | ||
418 | { CX18_CARD_INPUT_AUD_TUNER, CX18_AV_AUDIO5, 0 }, | ||
419 | { CX18_CARD_INPUT_LINE_IN1, CX18_AV_AUDIO_SERIAL1, 1 }, | ||
420 | }, | ||
421 | .tuners = { | ||
422 | /* XC3028 tuner */ | ||
423 | { .std = V4L2_STD_ALL, .tuner = TUNER_XC2028 }, | ||
424 | }, | ||
425 | .radio_input = { CX18_CARD_INPUT_AUD_TUNER, CX18_AV_AUDIO5, 2 }, | ||
426 | .ddr = { | ||
427 | /* | ||
428 | * Pointer to proper DDR config values provided by | ||
429 | * Terry Wu <terrywu at leadtek.com.tw> | ||
430 | */ | ||
431 | .chip_config = 0x303, | ||
432 | .refresh = 0x3bb, | ||
433 | .timing1 = 0x24220e83, | ||
434 | .timing2 = 0x1f, | ||
435 | .tune_lane = 0, | ||
436 | .initial_emrs = 0x2, | ||
437 | }, | ||
438 | .gpio_init.initial_value = 0x6, | ||
439 | .gpio_init.direction = 0x7, | ||
440 | .gpio_audio_input = { .mask = 0x7, | ||
441 | .tuner = 0x6, .linein = 0x2, .radio = 0x2 }, | ||
442 | .xceive_pin = 15, | ||
443 | .pci_list = cx18_pci_leadtek_dvr3100h, | ||
444 | .i2c = &cx18_i2c_std, | ||
445 | }; | ||
446 | |||
447 | /* ------------------------------------------------------------------------- */ | ||
448 | |||
395 | static const struct cx18_card *cx18_card_list[] = { | 449 | static const struct cx18_card *cx18_card_list[] = { |
396 | &cx18_card_hvr1600_esmt, | 450 | &cx18_card_hvr1600_esmt, |
397 | &cx18_card_hvr1600_samsung, | 451 | &cx18_card_hvr1600_samsung, |
@@ -400,6 +454,7 @@ static const struct cx18_card *cx18_card_list[] = { | |||
400 | &cx18_card_cnxt_raptor_pal, | 454 | &cx18_card_cnxt_raptor_pal, |
401 | &cx18_card_toshiba_qosmio_dvbt, | 455 | &cx18_card_toshiba_qosmio_dvbt, |
402 | &cx18_card_leadtek_pvr2100, | 456 | &cx18_card_leadtek_pvr2100, |
457 | &cx18_card_leadtek_dvr3100h, | ||
403 | }; | 458 | }; |
404 | 459 | ||
405 | const struct cx18_card *cx18_get_card(u16 index) | 460 | 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 bc6a8f9abd3..92026e82e10 100644 --- a/drivers/media/video/cx18/cx18-driver.c +++ b/drivers/media/video/cx18/cx18-driver.c | |||
@@ -152,7 +152,8 @@ MODULE_PARM_DESC(cardtype, | |||
152 | "\t\t\t 4 = Yuan MPC718\n" | 152 | "\t\t\t 4 = Yuan MPC718\n" |
153 | "\t\t\t 5 = Conexant Raptor PAL/SECAM\n" | 153 | "\t\t\t 5 = Conexant Raptor PAL/SECAM\n" |
154 | "\t\t\t 6 = Toshiba Qosmio DVB-T/Analog\n" | 154 | "\t\t\t 6 = Toshiba Qosmio DVB-T/Analog\n" |
155 | "\t\t\t 7 = Leadtek WinFast PVR2100/DVR3100 H\n" | 155 | "\t\t\t 7 = Leadtek WinFast PVR2100\n" |
156 | "\t\t\t 8 = Leadtek WinFast DVR3100 H\n" | ||
156 | "\t\t\t 0 = Autodetect (default)\n" | 157 | "\t\t\t 0 = Autodetect (default)\n" |
157 | "\t\t\t-1 = Ignore this card\n\t\t"); | 158 | "\t\t\t-1 = Ignore this card\n\t\t"); |
158 | MODULE_PARM_DESC(pal, "Set PAL standard: B, G, H, D, K, I, M, N, Nc, 60"); | 159 | 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 f89b8236796..c6a1e907f63 100644 --- a/drivers/media/video/cx18/cx18-driver.h +++ b/drivers/media/video/cx18/cx18-driver.h | |||
@@ -80,8 +80,9 @@ | |||
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_TOSHIBA_QOSMIO_DVBT 5 /* Toshiba Qosmio Interal DVB-T/Analog*/ | 82 | #define CX18_CARD_TOSHIBA_QOSMIO_DVBT 5 /* Toshiba Qosmio Interal DVB-T/Analog*/ |
83 | #define CX18_CARD_LEADTEK_PVR2100 6 /* Leadtek WinFast PVR2100/DVR3100 H */ | 83 | #define CX18_CARD_LEADTEK_PVR2100 6 /* Leadtek WinFast PVR2100 */ |
84 | #define CX18_CARD_LAST 6 | 84 | #define CX18_CARD_LEADTEK_DVR3100H 7 /* Leadtek WinFast DVR3100 H */ |
85 | #define CX18_CARD_LAST 7 | ||
85 | 86 | ||
86 | #define CX18_ENC_STREAM_TYPE_MPG 0 | 87 | #define CX18_ENC_STREAM_TYPE_MPG 0 |
87 | #define CX18_ENC_STREAM_TYPE_TS 1 | 88 | #define CX18_ENC_STREAM_TYPE_TS 1 |