[linux-dvb] S2API - Status - Thu Sep 11th

Johannes Stezenbach js at linuxtv.org
Tue Sep 16 23:24:05 CEST 2008


On Tue, Sep 16, 2008 at 04:58:49AM +0200, Christophe Thommeret wrote:
> Le Monday 15 September 2008 13:43:00 Johannes Stezenbach, vous avez écrit :
> > On Mon, Sep 15, 2008, Christophe Thommeret wrote:
> > > Le Sunday 14 September 2008 20:04:06 Christophe Thommeret, vous avez écrit :
> > > > as you expected, it's abit buggy and crashes at load ;)
> > > > i've searched for the alternative cinergyT2 driver.
> > > > it's available at: http://linuxtv.org/hg/~tmerle/cinergyT2/
> > > >
> > > > haven't tried it yet but will do (at least several people seems to have
> > > > it working).
> > >
> > > Have it working, not as good as Holger' one (often fails to lock) but it
> > > works, with both old and new api.
> >
> > Looking at the code, cinergyt2_fe_get_tune_settings() should
> > probably set step_size = max_drift = 0 to defeat
> > dvb_frontend_swzigzag_autotune().
> > c.f. mt352_get_tune_settings()
> 
> Thanx for the hint, unfortunately it doesn't help.
> In fact, if i set a larger timeout (time after which kaffeine gives up and 
> report tuning failure), say 5000ms, it always locks.
> The average lock time is about 2000ms, but sometimes it goes up to 4000 and 
> sometimes it's only 200, randomly for all freqs.
> If you have any idea, you are welcome :)

Not really and I can't test myself since I don't have any hw.

Holger's cinergyT2 driver sets the FE once (on FE_SET_FRONTEND),
and then queries regularly (every 333ms or CONFIG_DVB_CINERGYT2_QUERY_INTERVAL)
for the status. It NEVER retries the tuning like dvb_frontend_swzigzag_autotune()
might do, and the step_size = max_drift = 0 is supposed to prevent
that, but maybe dvb_frontend_swzigzag_autotune() logic is broken?
A printk in the new cinergyT2 driver should tell.

BTW, the cinergyT2 firmware is Open Source, you can find it in
http://linuxtv.org/cgi-bin/viewcvs.cgi/dvb-hw/dvbusb-fx2/termini/
if you are interested. But there is no magic in the firmware,
it just writes mt352 regs on FE_SET_FRONTEND and reads the
status reg for FE_READ_STATUS. That's all.


Johannes



More information about the linux-dvb mailing list