Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: High BER's & Glitching with 2.6 kernel, better with 2.4 and 1.0.0-pre2 (Nova-T)



Holger Waechtler wrote:
> Johannes Stezenbach wrote:
> >
> >>>Maybe Holger can comment on this?
> >>
> >>Hmm, I did not followed the discussion, but your suggestions sound 
> >>plausible. Does anybody remembers why the offset has been changed?
> >
> >
> >Well, if *you* don't remember why *you* changed it...
> 
> not really, I would need to check the old CVS commit logs and the mail 
> archive from these days. What synthesizer is built into the tuner 
> module, which IF offset frequency is mentioned in the datasheet?
> 
> sorry - I did not had these cards in my hand for about a year or so, I 
> don't remember the internal details; the last CVS changes were driven by 
> reports and patches on the mailing list I believe...

I made some tests and I don't see *any* noticable difference
between the old and new code. I have documentation
for the L64781 and tsa5060, but not for the whole
Grundig NIM. I don't know which code is "more correct".

But maybe some other people want to try out for themselves,
so I add an experimental patch which adds the old
code to the grundig_29504-401 driver below.


Regards,
Johannes


Index: linux/drivers/media/dvb/frontends/grundig_29504-401.c
===================================================================
RCS file: /cvs/linuxtv/dvb-kernel/linux/drivers/media/dvb/frontends/grundig_29504-401.c,v
retrieving revision 1.20
diff -u -p -r1.20 grundig_29504-401.c
--- linux/drivers/media/dvb/frontends/grundig_29504-401.c	8 Oct 2003 23:12:46 -0000	1.20
+++ linux/drivers/media/dvb/frontends/grundig_29504-401.c	11 Feb 2004 15:45:58 -0000
@@ -102,6 +102,7 @@ static int tsa5060_write (struct dvb_i2c
  */
 static int tsa5060_set_tv_freq (struct dvb_i2c_bus *i2c, u32 freq)
 {
+#if 0
 	u32 div;
 	u8 buf [4];
 	u8 cfg, cpump, band_select;
@@ -118,6 +119,19 @@ static int tsa5060_set_tv_freq (struct d
 	buf [1] = div & 0xff;
 	buf [2] = ((div >> 10) & 0x60) | cfg;
 	buf [3] = (cpump << 6) | band_select;
+#else
+        u32 div;
+        u8 buf [4];
+        u8 cfg;
+
+        div = (36000000 + freq) / 166666;
+        cfg = 0x88;
+
+        buf [0] = (div >> 8) & 0x7f;
+        buf [1] = div & 0xff;
+        buf [2] = ((div >> 10) & 0x60) | cfg;
+        buf [3] = 0xc0;
+#endif
 
 	return tsa5060_write(i2c, buf);
 }


-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index