Re: [PATCH 0/6] Enable CONFIG_TIMER for all Kirwood / MVEBU boards

Tony Dinh
2022-08-30T22:15:44Z

Hi Stefan,

On Tue, Aug 30, 2022 at 4:53 AM Stefan Roese <sr@denx.de> wrote:
>
> This patchset enhaces the recently added Orion Timer driver to support
> all other Kirkwood & 32bit MVEBU Armada platforms. Additionally, this
> timer support is then enabled per default for those platforms, so that
> the board config files don't need to be changed. Also necessary is
> some dts hacking, so that the timer DT node is available in early
> U-Boot stages.
>
> I've successfully tested this patchset on an Armada XP board. Additional
> test on other boards and platforms are very welcome and necessary.

I've run some tests with the following 2 Kirkwood boards: Cloud
Engines Pogo V4 88F6192 (with CONFIG_DM_RTC and CONFIG_RTC_EMULATION),
and Marvell Sheevaplug 88F6281 (with CONFIG_DM_RTC and CONFIG_RTC_MV).

It seems that it was either frozen or the timer did not expire at some
subsequent sleep commands. Sometime it happened at 2nd command, some
time at a later sleep command. For example,

=== Pogo V4 (the 1st sleep command works correctly at 10 seconds on my
stopwatch)

U-Boot 2022.10-rc3-00048-g66ccd87a9c-dirty (Aug 30 2022 - 13:38:24 -0700)
Pogoplug V4

Hit any key to stop autoboot: 0
Pogo_V4> sleep 10
Pogo_V4> sleep 31.5
<frozen here>

=== Sheevaplug (RTC battery is old, so the date was not updated, but
the clock seems OK)

U-Boot 2022.10-rc3-00048-g66ccd87a9c-dirty (Aug 30 2022 - 14:14:24 -0700)
Marvell-Sheevaplug
Hit any key to stop autoboot: 0
=> date
Date: 2000-01-01 (Saturday) Time: 0:02:55
=> sleep 10
=> date
Date: 2000-01-01 (Saturday) Time: 0:03:18
=> sleep 10
=> sleep 20.1
<frozen here>

Please let me know what I can do (i.e. perhaps running a debug patch).
Thanks,
Tony

> Thanks,
> Stefan
>
> Stefan Roese (6):
> timer: orion-timer: Add support for other Armada SoC's
> timer: orion-timer: Add timer_get_boot_us() for BOOTSTAGE support
> arm: mvebu: Use CONFIG_TIMER on all MVEBU & KIRKWOOD platforms
> arm: mvebu: dts: Makefile: Compile Armada 375 dtb in a separate step
> arm: mvebu: dts: armada-375.dtsi: Add timer0 & timer1
> arm: mvebu: dts: mvebu-u-boot.dtsi: Add "u-boot,dm-pre-reloc" to timer
> DT node
>
> arch/arm/Kconfig | 4 ++
> arch/arm/dts/Makefile | 6 ++-
> arch/arm/dts/armada-375.dtsi | 4 +-
> arch/arm/dts/mvebu-u-boot.dtsi | 11 ++++
> arch/arm/mach-mvebu/include/mach/config.h | 5 --
> drivers/timer/Kconfig | 5 +-
> drivers/timer/orion-timer.c | 66 +++++++++++++++++++++--
> 7 files changed, 89 insertions(+), 12 deletions(-)
>
> --
> 2.37.2
>