diff options
author | Stéphane Voltz <stef.dev@free.fr> | 2008-09-05 13:33:54 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-10-12 07:37:10 -0400 |
commit | 3f6014fc77c3630d2511302e19f4f02af1605947 (patch) | |
tree | 98f4cafcd95b9f1b71d671d45e05c2ce3c0da727 /drivers/media/video/cx88/cx88-cards.c | |
parent | 3de2ed127013219efc439c0d052d1cc825da88c2 (diff) |
V4L/DVB (9066): Pinnacle Hybrid PCTV Pro (pctv310c) DVB-T support
This patch against latest mercurial makes DVB-T working on Pinnacle
Hybrid PCTV Pro (pctv310c).
In cx88-dvb.c, a specific zl10353_config is created with the if2
inferred from the old comment in the currently used config. It is then
used for attach, and i2c_gate_ctrl is set to NULL.
The entry in cx88-cards.c is modified with GPIO gathered from windows
with regspy, and DVB enabled. The frontend is set to
XC3028_FE_ZARLINK456 to match the zl10353_config.
It is working great with the freeview channels I can receive.
Signed-off-by: Stéphane Voltz <stef.dev@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/cx88/cx88-cards.c')
-rw-r--r-- | drivers/media/video/cx88/cx88-cards.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/media/video/cx88/cx88-cards.c b/drivers/media/video/cx88/cx88-cards.c index 9f7210801524..369ba69cd0b4 100644 --- a/drivers/media/video/cx88/cx88-cards.c +++ b/drivers/media/video/cx88/cx88-cards.c | |||
@@ -1449,15 +1449,26 @@ static const struct cx88_board cx88_boards[] = { | |||
1449 | .name = "Pinnacle Hybrid PCTV", | 1449 | .name = "Pinnacle Hybrid PCTV", |
1450 | .tuner_type = TUNER_XC2028, | 1450 | .tuner_type = TUNER_XC2028, |
1451 | .tuner_addr = 0x61, | 1451 | .tuner_addr = 0x61, |
1452 | .radio_type = TUNER_XC2028, | ||
1453 | .radio_addr = 0x61, | ||
1452 | .input = { { | 1454 | .input = { { |
1453 | .type = CX88_VMUX_TELEVISION, | 1455 | .type = CX88_VMUX_TELEVISION, |
1454 | .vmux = 0, | 1456 | .vmux = 0, |
1457 | .gpio0 = 0x004ff, | ||
1458 | .gpio1 = 0x010ff, | ||
1459 | .gpio2 = 0x00001, | ||
1455 | }, { | 1460 | }, { |
1456 | .type = CX88_VMUX_COMPOSITE1, | 1461 | .type = CX88_VMUX_COMPOSITE1, |
1457 | .vmux = 1, | 1462 | .vmux = 1, |
1463 | .gpio0 = 0x004fb, | ||
1464 | .gpio1 = 0x010ef, | ||
1465 | .audioroute = 1, | ||
1458 | }, { | 1466 | }, { |
1459 | .type = CX88_VMUX_SVIDEO, | 1467 | .type = CX88_VMUX_SVIDEO, |
1460 | .vmux = 2, | 1468 | .vmux = 2, |
1469 | .gpio0 = 0x004fb, | ||
1470 | .gpio1 = 0x010ef, | ||
1471 | .audioroute = 1, | ||
1461 | } }, | 1472 | } }, |
1462 | .radio = { | 1473 | .radio = { |
1463 | .type = CX88_RADIO, | 1474 | .type = CX88_RADIO, |
@@ -1465,6 +1476,7 @@ static const struct cx88_board cx88_boards[] = { | |||
1465 | .gpio1 = 0x010ff, | 1476 | .gpio1 = 0x010ff, |
1466 | .gpio2 = 0x0ff, | 1477 | .gpio2 = 0x0ff, |
1467 | }, | 1478 | }, |
1479 | .mpeg = CX88_MPEG_DVB, | ||
1468 | }, | 1480 | }, |
1469 | [CX88_BOARD_WINFAST_TV2000_XP_GLOBAL] = { | 1481 | [CX88_BOARD_WINFAST_TV2000_XP_GLOBAL] = { |
1470 | .name = "Winfast TV2000 XP Global", | 1482 | .name = "Winfast TV2000 XP Global", |
@@ -2671,6 +2683,10 @@ void cx88_setup_xc3028(struct cx88_core *core, struct xc2028_ctrl *ctl) | |||
2671 | * Those boards uses non-MTS firmware | 2683 | * Those boards uses non-MTS firmware |
2672 | */ | 2684 | */ |
2673 | break; | 2685 | break; |
2686 | case CX88_BOARD_PINNACLE_HYBRID_PCTV: | ||
2687 | ctl->demod = XC3028_FE_ZARLINK456; | ||
2688 | ctl->mts = 1; | ||
2689 | break; | ||
2674 | default: | 2690 | default: |
2675 | ctl->demod = XC3028_FE_OREN538; | 2691 | ctl->demod = XC3028_FE_OREN538; |
2676 | ctl->mts = 1; | 2692 | ctl->mts = 1; |