[linux-dvb] Re: Continuity Errors with tda10021 (Re: Distordedvideo with Cinergy1200 DVB-C)

Robert Schlabbach robert_s at gmx.net
Mon Mar 7 22:18:45 CET 2005

From: "Markus Schulz" <msc at antzsystem.de>
> The packets are lost in dvb_dmx_swfilter_packets cause of sync byte
> (0x47) can't be found at next "Modulo 188" address and so the whole
> packet (next 188 bytes) are skipped.
> i've build some debug code to search from this position for sync byte
> and in my case the missing sync byte was everytime one byte behind
> original position and the packet from this position one byte to small
> (after 187 bytes the next sync byte is found).

I have since bought a Cinergy 1200 DVB-C and wrote a Windows driver for it
and ran into the same thing. It appears to be a timing issue between the
demodulator and the SAA7146A (rather than a PCI DMA issue): It looks as if
sometimes the "SYNC" line goes high so early that the SAA7146A latches in
the last (check) byte of the previous packet and subsequently is one byte
off on every byte.

Try this: Invert the polarity of the output clock with which the SAA7146A
latches in the bytes from the demodulator by _not_ setting the POCLKP bit
in the POLA1 register (change the third byte in the third line of the init
array from 0xa1 to 0xa0). This seems to cure the issue in my Windows

Please let me know what your results are.

Robert Schlabbach
e-mail: robert_s at gmx.net
Berlin, Germany

More information about the linux-dvb mailing list