By Date: <-- -->
By Thread: <-- -->

V4L/DVB updates



Am Mittwoch, den 08.02.2006, 18:29 +0000 schrieb Ricardo Cerqueira:
> On Wed, 2006-02-08 at 08:26 -0200, Mauro Carvalho Chehab wrote:
> > Hermann,
> > Em Ter, 2006-02-07 Ãs 17:43 +0100, hermann pitton escreveu:
> > > Am Dienstag, den 07.02.2006, 13:32 -0200 schrieb mchehab (at) infradead.org:
> > 
> > > Mauro-
> > > 
> > > This one contains an error. It disables the tuner on Pinnacle 300i.
> > > It must have TDA9887_PORT2_INACTIVE instead. The same error is already
> > > on saa7134 card=26 Pinnacle PCTV Stereo.
> > 
> > 	Hmmm... right. This was at the first list and I didn't reviewed. May
> > you submit me a patch? Also Pinnacle 110 seems to require the same
> > change.
> 
> 
> No, it doesn't. The 110i uses a tda9875a, and this patch, AFAIK, is
> microtune-related. Also, I'm using a 110i in a PVR, with the current
> code, without any problems.
> 

Hello,

I don't get a rhyme out of it, what should have caused on 2.6.15-rc3 and
rc5 that port2=0 should have been set? We never did this by intention
and still don't do it, AFAIK.

That the error in the attempted fix causes the trouble now is obvious,
but it should currently not be needed at all. But since as far as I can
see it also should not create trouble in digital mode, the fix of the
fix is attached that it does what the plan was.

There is one more thing to investigate for the 300i. The digital tuning
is reportedly broken since about after 20050627.

A little bit hidden in mt20xx it was found now that the change to
digital tuner mode fails and digital works if the digital if2 is forced
with if (1) { instead. (the needed warm-up time was often reported)

static void mt2050_set_tv_freq(struct i2c_client *c, unsigned int freq)
{
	struct tuner *t = i2c_get_clientdata(c);
	unsigned int if2;

	if (t->std & V4L2_STD_525_60) {
		// NTSC
		if2 = 45750*1000;
	} else {
		// PAL
		if2 = 38900*1000;
	}
	if (V4L2_TUNER_DIGITAL_TV == t->mode) {
		// DVB (pinnacle 300i)
		if2 = 36150*1000;
	}
	mt2050_set_if_freq(c, freq*62500, if2);
	mt2050_set_antenna(c, tv_antenna);
}

Does somebody know if it most likely needs more than only to setup

	case SAA7134_BOARD_PINNACLE_300I_DVBT_PAL:
		{
		struct tuner_setup tun_setup;

		tun_setup.mode_mask = T_ANALOG_TV | T_DIGITAL_TV;
		tun_setup.type = dev->tuner_type;
		tun_setup.addr = ADDR_UNSET;

		saa7134_i2c_call_clients (dev, TUNER_SET_TYPE_ADDR,&tun_setup);
		}
		break;

in saa7134-cards.c saa7134_board_init2, or would this be already worth a
try?


Cheers,
Hermann


- Fix an error in the previously attempted fixes of saa7134 Pinnacle
  cards with microtune mt2050 and tda9886 to keep the tuner responsive.

Signed-off-by: Hermann Pitton <hermann.pitton (at) onlinehome.de>




--- saa7134-cards.c.orig	2006-02-08 17:58:46.000000000 +0100
+++ saa7134-cards.c	2006-02-08 18:39:04.000000000 +0100
 (at)  (at)  -979,7 +979,7  (at)  (at) 
 		.radio_type     = UNSET,
 		.tuner_addr	= ADDR_UNSET,
 		.radio_addr	= ADDR_UNSET,
-		.tda9887_conf   = TDA9887_PRESENT | TDA9887_INTERCARRIER | TDA9887_PORT2_ACTIVE,
+		.tda9887_conf   = TDA9887_PRESENT | TDA9887_INTERCARRIER | TDA9887_PORT2_INACTIVE,
 		.inputs         = {{
 			.name = name_tv,
 			.vmux = 3,
 (at)  (at)  -1668,7 +1668,7  (at)  (at) 
 		.radio_type     = UNSET,
 		.tuner_addr	= ADDR_UNSET,
 		.radio_addr	= ADDR_UNSET,
-		.tda9887_conf   = TDA9887_PRESENT | TDA9887_INTERCARRIER | TDA9887_PORT2_ACTIVE,
+		.tda9887_conf   = TDA9887_PRESENT | TDA9887_INTERCARRIER | TDA9887_PORT2_INACTIVE,
 		.mpeg           = SAA7134_MPEG_DVB,
 		.inputs         = {{
 			.name = name_tv,
--
video4linux-list mailing list
Unsubscribe mailto:video4linux-list-request (at) redhat.com?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/video4linux-list