e9hack wrote:
> Oliver Endriss schrieb:
> > Jukka Pirinen wrote:
> >> As workaround I commented out initialisation of CI interface, that's not
> >> a problem because I don't have CI.
> >>
> >> diff budget-av.c.orig budget-av.c
> >> 1175c1175
> >> <        ciintf_init(budget_av);
> >> ---
> >>>        //ciintf_init(budget_av);
> > 
> > Could you please try to find out, why the CI thread is causing high
> > load? You might start checking the values of ca->delay and ca->wakeup
> > before wait_event_interruptible_timeout().
> > 
> > Sorry, I can't do this. I don't have budget-av hardware.
> 
> It may be a problem of saa7146_wait_for_debi_done(). Without a CI/CAM, every 
> debi read/write request
> ends with an error. In this case, SPCI_DEBI_S will never go low.

Yep, this might be a problem. But it is surprising that this issue
was never detected before.

If DEBI_S ever goes high, it will never be reset.
Afaics there is no direct way to reset this bit.
(A new debi command should reset it, though.)

> Most of the debi requests are done with an spinlock held.

None of the debiread/write accesses in budget-av uses locks,
which is probably a bug. See the other thread.

> Saa7146_wait_for_debi_done() polls for 250msec the PSR. Possible, this is the 
> reason for the high load. Usually, saa7146_wait_for_debi_done() can bail out 
> earlier,
> if SPCI_DEBI_E is set.

Some debiread/write calls in budget-av use busy-waiting.
For testing it might be worth to set the last parameter of the
debiread/write calls to 1 (nobusyloop).

> saa7146_wait_for_debi_done() is also used by the TT-FF cards. During the 
> booting of the ARM, 
> this cards need the timeout/wait after a debi error.

Could you please explain why the FF card needs this timeout?

CU
Oliver

-- 
----------------------------------------------------------------
VDR Remote Plugin 0.3.9: http://www.escape-edv.de/endriss/vdr/
----------------------------------------------------------------


_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

Reply via email to