Dear Reinhard Meyer, In message <4cc67ca1.9090...@emk-elektronik.de> you wrote: > > If implemented with true 64 bits for get_ticks() that function is useable > for timeout programming: > > ulong timeval = get_timer (0); > > do { > ... > } while (get_timer (timeval) < TIMEOUT); > > It appears that the "base" parameter and return value is in CONFIG_SYS_HZ > units, and not in native ticks. That causes 64 bit mul/div every > time get_timer() is called. Won't hurt in a timeout loop, though.
But it will hurt in othe rplaces. Also, this code _is_ a bit different, as "get_timer(0)" makes sure the counter starts ticking again at 0, and get_timer() is defined to have millisecond resolution. So you have a guaranteed 2^32 milliseconds or 4294967 seconds or about 3.3 years available which indeed should be sufficient to implement standard timeouts. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de (null cookie; hope that's ok) _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot