[PATCH v2 3/8] timer: orion-timer: Add timer_get_boot_us() for BOOTSTAGE support
Tony Dinh
mibodhi at gmail.com
Sun Sep 4 02:02:29 CEST 2022
Hi Stefan,
Sorry, that message was prematurely sent (fat finger). Please see the
continuation below.
On Sat, Sep 3, 2022 at 4:43 PM Tony Dinh <mibodhi at gmail.com> wrote:
>
> Hi Stefan,
>
> On Sat, Sep 3, 2022 at 3:44 AM Stefan Roese <sr at denx.de> wrote:
> >
> > Hi Tony,
> >
> > On 03.09.22 11:44, Tony Dinh wrote:
> > > Hi Stefan,
> > >
> > > On Thu, Sep 1, 2022 at 11:25 PM Stefan Roese <sr at denx.de> wrote:
> > >>
> > >> Add timer_get_boot_us() to support boards, that have CONFIG_BOOTSTAGE
> > >> enabled, like pogo_v4.
> > >>
> > >> Signed-off-by: Stefan Roese <sr at denx.de>
> > >> ---
> > >> v2:
> > >> - Change timer_get_boot_us() to use the timer_early functions
> > >> - Remove #if CONFIG_IS_ENABLED(BOOTSTAGE)
> > >>
> > >> Simon, I'm currently looking into this timer_get_boot_us() to using
> > >> timer_early_get_count() etc consolidation.
> > >
> > > Indeed, as you've mentioned above, I think timer_early_get_count() and
> > > timer_early_get_rate() do need to take into consideration what the
> > > input_clock_type is for Kirkwood boards with CONFIG_BOOTSTAGE such as
> > > the Pogo V4.
> > >
> > > I'm seeing on the Pogo V4 test, the timer command reports time about 6
> > > times slower than it should. It does seem to jive with the fact that
> > > the Pogo V4 CONFIG_SYS_TCLK is 166Mhz, versus MVEBU 25MHz clock rate.
> >
> > Ah, I've missing updating the early functions to also differentiate
> > between fixed clocks and TCLK timer.
> >
> > Please give the attached patch a try - should be applied on top of this
> > latest patchset.
>
That looks promising, but I think we are still missing something.
After applying the attached patch, I ran the test again and it behaved
the same way (clock rate 6 times slower). So I did another test.
--- Test 1
Pogo_V4> timer start; sleep 60; timer get; sleep 30; timer get
60.000
90.000
So apparently the sleep cmd has reset the correct clock rate.
--- Test 2
Pogo_V4> timer start; sleep 30; timer get; sleep 30; timer get
30.000
60.000
And then wait for 30 seconds, do another "timer get" (I expected to
see about 90 to 95 seconds).
Pogo_V4> timer get
66.237
The different call tree with the timer vs the sleep command made a
difference. But I could not see where.
--- Test 3
Then I recalled about CONFIG_TIMER_EARLY. It is not selected by
default in Kconfig currently. So I enabled that to see the behavior.
But running this build hangs right off the bat. No u-boot version
banner is printed out.
Thanks,
Tony
>
>
>
> > Thanks,
> > Stefan
More information about the U-Boot
mailing list