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

Marek Vasut marek.vasut at gmail.com
Wed Oct 16 18:03:17 UTC 2019


On 10/16/19 7:51 PM, Eugeniu Rosca wrote:
> On Wed, Oct 16, 2019 at 07:43:09PM +0200, Eugeniu Rosca wrote:
>> On Wed, Oct 16, 2019 at 07:26:44PM +0200, Marek Vasut wrote:
>>> On 10/16/19 7:11 PM, Eugeniu Rosca wrote:
>>>> On Tue, Oct 15, 2019 at 10:43:41PM +0200, Marek Vasut wrote:
>>>>> Add get_timer_us(), which is useful e.g. when we need higher
>>>>> precision timestamps.
>>>>
>>>> FWIW, I agree with Simon that bootstage [1] can be an awesome tool for
>>>> profiling and boot time measurements. With a bit of instrumentation and
>>>> host-side scripting, it allows to produce accurate bootcharts like [2].
>>>>
>>>> [1] https://patchwork.ozlabs.org/patch/1177393/#2281091
>>>> [2] https://i.ibb.co/mG6Xc1p/2019-10-16-190251.png
>>>
>>> I don't need that though, I really only need to know how long the code
>>> spent between two points in code.
>>
>> It can be accomplished in N ways. A quick and dirty way to use
>> "bootstage" would be to add below instrumentation:
>>
>>  ----------8<----------
>> bootstage_mark_name(BOOTSTAGE_ID_ALLOC, "count/time from here");
>> /*
>>  * my-precious-code
>>  */
>> bootstage_mark_name(BOOTSTAGE_ID_ALLOC, "duration of my-precious-code");
>>  ----------8<----------
>>
>> It's likely orthogonal to what's being proposed in your patch.
> 
> Bottom line is "bootstage" already makes use of timer_get_boot_us(), so
> it's not entirely clear to me why another us-resolution timer API would
> be needed.

Because the new API is actually aligned with the old one.
I don't need the machinery behind the bootstage either.

-- 
Best regards,
Marek Vasut


More information about the U-Boot mailing list