Mailing List archive

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

[linux-dvb] Re: VDR: Tuning stability



Klaus Schmidinger wrote:
> 
> "Marcus O.C. Metzler" wrote:
> >
> > Klaus Schmidinger writes:
> >  >   ftp://ftp.cadsoft.de/pub/people/kls/ctest.c
> >
> > There is some really strange stuff in that tuning routine.

FUD.
Klaus' tuning routine is simple, straight forward and should
work fine (for _tuning_, setting the PIDs is more involved, as
I've written earlier).


> > the important stuff is the QPSK_GET_EVENT call, which should be polled
> > if a large enough timeout to ensure that the channel is tuned.

A blocking read is just fine, because it means the driver
can take as long as it needs. In a single-threaded GUI program
one would use poll/select, however.


> With the new ctest.c at first it looked rather good, but after a while
> the channels didn't sync again. In such a situation even killing and
> restarting the test program doesn't help. I have to reload the driver
> to make it work again.
> 
> So basicly polling the frontend until the tuner is finished appears
> to be the right thing to do, but I'm afraid there's still another
> problem here.

I think read vs. poll does not make a difference. The code which handles
read and poll/select of QPSK events does not influence the tuning
operation and/or the QPSK event generation.

IMHO there is either a bug in the driver's tuning code (zig-zap scan),
or (worse) the VES1893 chip is either buggy or requires special tricks which
we don't know about (because they aren't mentioned in the data sheet).


I cannot reproduce the behaviour described by Ralph. ctest tunes
fine most of the time, which some sporadic, undreproducable "not sync'ed"s
interpersed. I had one series of "not sync'ed"s for about a dozen
channels, but then it worked again, w/o restart.

I experienced two ARM RESETs, though, and I think my code avoids
them by doing a DMX_STOP before tuning (as Ralph mentioned, the TPP
hardware in the AV7110 can crash when it is fed a TS with errors, which
is likely to happen during tuning). But still no driver reload or ctest
restart necessary.


Johannes


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



Home | Main Index | Thread Index