On Sun, 2013-12-22 at 01:21 +0000, Ian Campbell wrote: > On Sat, 2013-12-21 at 23:23 +0100, Vladimir 'φ-coder/phcoder' Serbinenko > wrote: > > On 15.12.2013 16:23, Ian Campbell wrote: > > > From: Ian Campbell <ian.campb...@citrix.com> > > > > > > u-boot's API_GET_TIMER returns the current time in ms by directly > > > exposing the > > > internal get_timer which is in ms, which isn't all that clearly > > > documented but > > > is obvious from the use within u-boot and is mentioned in > > > http://www.denx.de/wiki/U-Boot/TaskTimerAPI. > > > > > During tests on my raspberry pi, I actually experienced the exact > > opposite. On PI timer API is in microseconds. > > Are you sure you made no mistake? > > I'm quite sure that on the Midway platform get_timer was returning ms > and the 5s grub countdown took 5s after my fix and some interminably > long time before it. > > Sadly actual documentation of the u-boot API is a bit thin on the > ground, but get_timer==ms is also corroborated by some ad-hoc googling I > did (e.g. resulting in the above link) as well as inspection of some > random u-boot ports. Some ports have an explicit get_timer_us function, > which adds credence to the idea that get_timer is in ms instead.
See also this patch to u-boot upstream: commit 5eaa215607c8668bfa6a7183407eba8fec63d648 Author: Stephen Warren <swar...@wwwdotorg.org> Date: Wed Mar 27 18:43:23 2013 +0000 ARM: bcm2835: fix get_timer() to return ms Apparently, CONFIG_SYS_HZ must be 1000. Change this, and fix the timer driver to conform to this. Have the timer implementation export a custom API get_timer_us() for use by the BCM2835 MMC API, which needs us resolution for a HW workaround. Signed-off-by: Stephen Warren <swar...@wwwdotorg.org> and from README: - CPU timer options: CONFIG_SYS_HZ The frequency of the timer returned by get_timer(). get_timer() must operate in milliseconds and this CONFIG option must be set to 1000. Ian. _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel