Mike Frysinger wrote: > the Blackfin core tick/timer code has been around since the start of the > original port, but i'm not sure it's entirely correct. some common code that > uses timers seems to be misbehaving in that the timeout is pretty much > immediate. makes me think that we've spent time on making udelay() work, but > then just glossed over the rest. > > unfortunately, there doesnt seem to be any docs on what exactly these > functions do so it's hard for me to verify/change any of it.
Yes, you are right. Some days ago I found that no proper documentation for the ticks/timer related code is there, too. From looking at the existing code for some ARM boards (OSK, DaVinci, OMAP3) my idea of this code is: > my understanding is that: > - get_ticks - return some notion of "cpu ticks" Yes. Returns the number of cpu ticks since power up. I.e. with 1000 ticks per second (CONFIG_SYS_HZ) the number of elapsed ms since power up. > - get_tbclk - return number of "cpu ticks" that elapse in one second Yes. Some implementations just return CONFIG_SYS_HZ which is supposed to be 1000. > - timer_init - setup a core timer Some implementations do this in interrupt_init(), too. > - get_timer(x) - not really sure what this is supposed to represent, or how > "x" is used This is similar to get_ticks(), i.e. returns the number of ticks since power up. Parameter x is used as a base which is subtracted from ticks. With x == 0 this function is the same as get_ticks(). If x != 0 the value returned is number of ticks since power up - x > - reset_timer - reset core timer to 0 Some implementations don't reset the timer (hw device) itself. They just reset the timestamp counter (sw variable) which counts the ticks since power up (i.e. that is returned by get_ticks()). > - CONFIG_SYS_HZ - no idea how this relates to ticks/timer in U-Boot as in > the > Linux world, this is the core timer (scheduler) frequency (how many times to > execute per second) CONFIG_SYS_HZ is supposed to be 1000 Does this make sense? Best regards Dirk _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot