cafe_ccic/ov7670 hang on boot
Daniel Drake
dsd at laptop.org
Wed Jun 18 12:33:16 EDT 2008
On Wed, 2008-06-18 at 09:55 -0600, Jonathan Corbet wrote:
> I'll try to look into it tomorrow. Things may be slow; whenever I get
> back into OLPC stuff after a long lapse it always seems to take me a day
> to get back to where I can build new kernels and successfully install
> them on a laptop.
Feel free to ask me for help. I've just had to figure out all this stuff
for myself.
> Meanwhile:
>
> > I added a loop counter and made it print out a message when it reaches
> > the 500th iteration. It hit the condition rather quickly, and in the
> > first case: addr=0x42 command=0x46 value=0x58
>
> How quickly? Given the schedule_timeout(1) call, it should take a good
> five seconds to iterate five hundred times at HZ=100. Might you
> (generic OLPC "you") have bumped HZ at some point? If you have a
> moment, could you try restoring the upstream code, but changing the
> schedule_timeout() line to:
Sorry, I didn't phrase that right. By "quickly" I meant that it only
took about 15 reboots before the infinite loop happened. For any
particular session where the inifinite loop happens, it does indeed take
about 5 seconds to hit the 500th iteration.
> schedule_timeout(10);
It doesn't help, already seen two crashes.
Erik also tried increasing the udelay() inside cafe_smbus_write_done()
from 20 to 100. No change, the infinite loop still happens.
Thanks,
Daniel
More information about the Devel
mailing list