Hi Tony,

On 31.08.22 00:15, Tony Dinh wrote:
Hi Stefan,

On Tue, Aug 30, 2022 at 4:53 AM Stefan Roese <[email protected]> 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>

Does the cmd interface support fractial numbers? Please test again with
31 or other integral numbers.

=== 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).

Please see above. I assume that the fractional numbers result in very
long numbers internally, which result in a frozen / hanging system.

Thanks,
Stefan

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


Viele Grüße,
Stefan Roese

--
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: [email protected]

Reply via email to