Mailing List archive

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

[linux-dvb] Re: Busy waiting in i2c_busy_rise_and_fall (was: Re: Re: full featured card without signal and required video memory investigation)



On Tuesday 15 July 2003 06:23 am, Oliver Endriss wrote:
> On Monday 14 July 2003 17:54, Johannes Stezenbach wrote:
> > Oliver Endriss wrote:
> > > On Monday 14 July 2003 14:33, Johannes Stezenbach wrote:
> >
> > What I get from Roberts description it's not a timing problem (it's
> > not sufficient to udelay(1), or do a dummy read from some other
> > register), but one should explicitely do one dummy read from IICSTA,
> > discard the value, and then do a second read to get valid data.
>
> Hm, I tested this and could *not* verify this problem:
> Reading IICSTA always returns a valid value (busy flag set).
> Really strange. Anyway, to be on the safe side, a dummy read
> should be added.
>

Sorry to jump in so late on this discussion.  I played with the I2C bus awhile 
back, and found that with the system I was working on it *was* a timing 
problem.  Two reads just gave the I2C bus enough time to settle.

This combination worked every time: udelay(2) and then loop until (status 
shows not busy && the upload bits for MC2 == 0).  Maybe I'm way off and 
missed something reading the spec, but this has worked without any problems 
for a while... though I have not tested to see at what speed I can load data 
with this.

Anyhow, that was my experience with the I2C bus.

Matt Davis


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



Home | Main Index | Thread Index