[linux-dvb] S2API - Status - Thu Sep 11th
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
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.
More information about the linux-dvb