[U-Boot] [PATCH] lib: time: Add microsecond timer

Simon Glass sjg at chromium.org
Wed Oct 16 16:58:51 UTC 2019


Hi Marek,

On Wed, 16 Oct 2019 at 10:55, Marek Vasut <marek.vasut at gmail.com> wrote:
>
> On 10/16/19 6:54 PM, Simon Glass wrote:
> > Hi Marek,
>
> Hello Simon,
>
> > On Wed, 16 Oct 2019 at 10:44, Marek Vasut wrote:
> >>
> >> On 10/16/19 6:40 PM, Simon Glass wrote:
> >>> Hi Marek,
> >>
> >> Hi,
> >>
> >>> On Wed, 16 Oct 2019 at 02:55, Marek Vasut wrote:
> >>>>
> >>>> On 10/16/19 3:30 AM, Simon Glass wrote:
> >>>>> Hi Marek,
> >>>>
> >>>> Hi,
> >>>>
> >>>>> On Tue, 15 Oct 2019 at 14:43, Marek Vasut wrote:
> >>>>>>
> >>>>>> Add get_timer_us(), which is useful e.g. when we need higher
> >>>>>> precision timestamps.
> >>>>>
> >>>>> Can we use timer_get_us()? It seems confusing to have two.
> >>>>
> >>>> Nope, that one doesn't have the range (unsigned long vs. u64) and also
> >>>> doesn't behave the same way as old get_timer(). I wanted something which
> >>>> is similar, just for uS instead of mS.
> >>>
> >>> Can you add comments to your patch to indicate what is going on any
> >>> why to use this?
> >>>
> >>> Bootstage uses ulong which is enough for about an hour. How long is
> >>> U-Boot running?
> >>
> >> It can run as long as anyone needs.
> >>
> >>> If you are using differential times, presumably for timeouts, then
> >>> there seems to be little reason to need u64.
> >>
> >> I use it for logging timestamps during profiling, e.g. of the EHCI driver.
> >
> > Have you tried bootstage?
>
> What for ? I need to debug the EHCI driver performance across the EHCI
> driver and USB storage implementation. Bootstage is not helpful here.

It can track the time spent in particular parts of the code,
accumulating it over multiple calls, etc. E.g. how much is FS, how
much is driver, how much is waiting for replies...

Regards,
Simon


More information about the U-Boot mailing list