All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tony Dinh <mibodhi@gmail.com>
To: Stefan Roese <sr@denx.de>
Cc: "U-Boot Mailing List" <u-boot@lists.denx.de>,
	"Pali Rohár" <pali@kernel.org>,
	"Michael Walle" <michael@walle.cc>,
	"Simon Glass" <sjg@chromium.org>
Subject: Re: [PATCH v2 3/8] timer: orion-timer: Add timer_get_boot_us() for BOOTSTAGE support
Date: Sat, 3 Sep 2022 02:44:21 -0700	[thread overview]
Message-ID: <CAJaLiFzKT4ciSb2DdsDZBWQj_vgAVsi-GEqUKRF=82jB3ySnmg@mail.gmail.com> (raw)
In-Reply-To: <20220902062554.1197435-4-sr@denx.de>

Hi Stefan,

On Thu, Sep 1, 2022 at 11:25 PM Stefan Roese <sr@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@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.

All the best,
Tony


>
>  drivers/timer/orion-timer.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
>
> diff --git a/drivers/timer/orion-timer.c b/drivers/timer/orion-timer.c
> index 14f318e57d4d..6c0b8550412d 100644
> --- a/drivers/timer/orion-timer.c
> +++ b/drivers/timer/orion-timer.c
> @@ -1,6 +1,7 @@
>  // SPDX-License-Identifier: GPL-2.0+
>  #include <asm/io.h>
>  #include <common.h>
> +#include <div64.h>
>  #include <dm/device.h>
>  #include <dm/fdtaddr.h>
>  #include <timer.h>
> @@ -39,6 +40,14 @@ u64 notrace timer_early_get_count(void)
>         return timer_conv_64(~readl(MVEBU_TIMER_BASE + TIMER0_VAL));
>  }
>
> +ulong timer_get_boot_us(void)
> +{
> +       u64 ticks;
> +
> +       ticks = timer_early_get_count();
> +       return lldiv(ticks * 1000, timer_early_get_rate());
> +}
> +
>  static uint64_t orion_timer_get_count(struct udevice *dev)
>  {
>         struct orion_timer_priv *priv = dev_get_priv(dev);
> --
> 2.37.3
>

  reply	other threads:[~2022-09-03  9:44 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-02  6:25 [PATCH v2 0/8] Enable CONFIG_TIMER for all Kirkwood / MVEBU boards Stefan Roese
2022-09-02  6:25 ` [PATCH v2 1/8] timer: orion-timer: Use timer_conv_64() to fix timer wrap around Stefan Roese
2022-09-02  7:44   ` Michael Walle
2022-09-02  7:45     ` Stefan Roese
2022-09-02  6:25 ` [PATCH v2 2/8] timer: orion-timer: Add support for other Armada SoC's Stefan Roese
2022-09-02  6:25 ` [PATCH v2 3/8] timer: orion-timer: Add timer_get_boot_us() for BOOTSTAGE support Stefan Roese
2022-09-03  9:44   ` Tony Dinh [this message]
2022-09-03 10:44     ` Stefan Roese
2022-09-03 23:43       ` Tony Dinh
2022-09-04  0:02         ` Tony Dinh
2022-09-04  0:38           ` Tony Dinh
2022-09-04  1:08             ` Pali Rohár
2022-09-04  2:36               ` Tony Dinh
2022-09-04  9:41                 ` Pali Rohár
2022-09-04  8:54           ` Michael Walle
2022-09-04 19:47             ` Tony Dinh
2022-09-02  6:25 ` [PATCH v2 4/8] arm: mvebu: Use CONFIG_TIMER on all MVEBU & KIRKWOOD platforms Stefan Roese
2022-09-02  6:25 ` [PATCH v2 5/8] arm: mvebu: dts: Makefile: Compile Armada 375 dtb in a separate step Stefan Roese
2022-09-02  6:25 ` [PATCH v2 6/8] arm: mvebu: dts: armada-375.dtsi: Add timer0 & timer1 Stefan Roese
2022-09-02  6:25 ` [PATCH v2 7/8] arm: mvebu: dts: mvebu-u-boot.dtsi: Add "u-boot, dm-pre-reloc" to timer DT node Stefan Roese
2022-09-02  6:25 ` [PATCH v2 8/8] kirkwood: lsxl: Sync defconfigs Stefan Roese
2022-09-03  0:10 ` [PATCH v2 0/8] Enable CONFIG_TIMER for all Kirkwood / MVEBU boards Tony Dinh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAJaLiFzKT4ciSb2DdsDZBWQj_vgAVsi-GEqUKRF=82jB3ySnmg@mail.gmail.com' \
    --to=mibodhi@gmail.com \
    --cc=michael@walle.cc \
    --cc=pali@kernel.org \
    --cc=sjg@chromium.org \
    --cc=sr@denx.de \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.