Commit 0d723c09 authored by Michael Krufky's avatar Michael Krufky Committed by Linus Torvalds
Browse files

[PATCH] v4l: add DVB support for DViCO FusionHDTV3 Gold-T



- Correct sync byte for MPEG-2 transport stream packets.
- Add lgdt3302 as dependency of cx88-dvb in Kconfig.
- Add dvb support in v4l for DViCO FusionHDTV3 Gold-T using lgdt3302 frontend.
  This adds support for a different board from the previous (Gold-Q) patch.

Signed-off-by: default avatarMichael Krufky <mkrufky@m1k.net>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: default avatarJohannes Stezenbach <js@linuxtv.org>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent e057ee11
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -106,6 +106,19 @@ struct dvb_pll_desc dvb_pll_microtune_4042 = {
};
EXPORT_SYMBOL(dvb_pll_microtune_4042);

struct dvb_pll_desc dvb_pll_thomson_dtt7611 = {
	.name  = "Thomson dtt7611",
	.min   =  44000000,
	.max   = 958000000,
	.count = 3,
	.entries = {
		{ 157250000, 44000000, 62500, 0x8e, 0x39 },
		{ 454000000, 44000000, 62500, 0x8e, 0x3a },
		{ 999999999, 44000000, 62500, 0x8e, 0x3c },
	},
};
EXPORT_SYMBOL(dvb_pll_thomson_dtt7611);

struct dvb_pll_desc dvb_pll_unknown_1 = {
	.name  = "unknown 1", /* used by dntv live dvb-t */
	.min   = 174000000,
+1 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ extern struct dvb_pll_desc dvb_pll_thomson_dtt759x;
extern struct dvb_pll_desc dvb_pll_thomson_dtt7610;
extern struct dvb_pll_desc dvb_pll_lg_z201;
extern struct dvb_pll_desc dvb_pll_microtune_4042;
extern struct dvb_pll_desc dvb_pll_thomson_dtt7611;
extern struct dvb_pll_desc dvb_pll_unknown_1;

extern struct dvb_pll_desc dvb_pll_tua6010xs;
+1 −0
Original line number Diff line number Diff line
@@ -344,6 +344,7 @@ config VIDEO_CX88_DVB
	select DVB_MT352
	select DVB_OR51132
	select DVB_CX22702
	select DVB_LGDT3302
	---help---
	  This adds support for DVB/ATSC cards based on the
	  Connexant 2388x chip.
+2 −1
Original line number Diff line number Diff line
/*
 * $Id: cx88-cards.c,v 1.84 2005/07/02 19:42:09 mkrufky Exp $
 * $Id: cx88-cards.c,v 1.85 2005/07/04 19:35:05 mkrufky Exp $
 *
 * device driver for Conexant 2388x based TV cards
 * card-specific stuff.
@@ -723,6 +723,7 @@ struct cx88_board cx88_boards[] = {
                        .vmux   = 2,
                        .gpio0  = 0x0f00,
                }},
		.dvb            = 1,
        },
        [CX88_BOARD_ADSTECH_DVB_T_PCI] = {
                .name           = "ADS Tech Instant TV DVB-T PCI",
+21 −0
Original line number Diff line number Diff line
@@ -220,6 +220,13 @@ static struct lgdt3302_config fusionhdtv_3_gold_q = {
	.pll_desc         = &dvb_pll_microtune_4042,
	.set_ts_params    = lgdt3302_set_ts_param,
};

static struct lgdt3302_config fusionhdtv_3_gold_t = {
	.demod_address    = 0x0e,
	.pll_address      = 0x61,
	.pll_desc         = &dvb_pll_thomson_dtt7611,
	.set_ts_params    = lgdt3302_set_ts_param,
};
#endif

static int dvb_register(struct cx8802_dev *dev)
@@ -282,6 +289,20 @@ static int dvb_register(struct cx8802_dev *dev)
						    &dev->core->i2c_adap);
		}
		break;
	case CX88_BOARD_DVICO_FUSIONHDTV_3_GOLD_T:
		dev->ts_gen_cntrl = 0x08;
		{
		/* Do a hardware reset of chip before using it. */
		struct cx88_core *core = dev->core;

		cx_clear(MO_GP0_IO, 1);
		mdelay(100);
		cx_set(MO_GP0_IO, 9); /* ANT connector too FIXME */
		mdelay(200);
		dev->dvb.frontend = lgdt3302_attach(&fusionhdtv_3_gold_t,
						    &dev->core->i2c_adap);
		}
		break;
#endif
	default:
		printk("%s: The frontend of your DVB/ATSC card isn't supported yet\n",
Loading