Qi didn't work with my uSD, workaround found
Andy Green
andy at openmoko.com
Sat Dec 13 19:56:44 CET 2008
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Somebody in the thread at some point said:
| On Saturday 13 December 2008 19:05:43 Joerg Reisenweber wrote:
|>> udelay(100000);
|>> udelay(100000);
|>> udelay(100000);
|> WTF? anything wrong with a single "udelay(600000);" instead of
1+1+1+3? Maybe
|> even 1,000,000 for all the SD crap to come
|
| udelay is not designed for huge values.
| I think you should try hard to convert this into an msleep()
| Delaying 1 second with udelay is not acceptable.
| 300msec actually is pretty big for udelay, too.
|
| Why can't we use msleep() here? Any spinlocks held?
It would be good advice, but this is in Qi bootloader, not Linux. There
are no interrupts (not even a vector table) and it's all single threaded.
For that matter, udelay() timing in there is just approximate.
I have plans for delays in Qi that will make it adhere more to wallclock
time as a side-effect, but it'll still be basically the same single
threaded deal.
- -Andy
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org
iEYEARECAAYFAklEBWwACgkQOjLpvpq7dMrzXgCfYF4mmFgI0waSkZquKjAz9XVe
AwcAnjzxJavWYq0Jd3kWQgzshBB+uj5W
=lAxk
-----END PGP SIGNATURE-----
More information about the openmoko-kernel
mailing list