Page MenuHomeFreeBSD

Add support for watchdog on Armada38x
ClosedPublic

Authored by bsz_semihalf.com on Dec 7 2015, 8:12 AM.
Tags
Referenced Files
Unknown Object (File)
Sat, Oct 11, 5:38 AM
Unknown Object (File)
Fri, Oct 10, 1:09 PM
Unknown Object (File)
Thu, Oct 9, 2:30 AM
Unknown Object (File)
Sep 13 2025, 9:51 AM
Unknown Object (File)
Sep 12 2025, 5:15 PM
Unknown Object (File)
Sep 5 2025, 10:41 AM
Unknown Object (File)
Aug 23 2025, 7:39 PM
Unknown Object (File)
Aug 15 2025, 10:08 PM
Subscribers

Details

Summary

A38X watchdog support was implemented in sys/arm/mv/timer.c driver. It
required following modifications:

  • add "marvell,armada-380-wdt" compatibility, which supports only watchdog
    • in this case driver returns before attaching timers
  • correct and enhance definitions related to timer control register
  • unmask reset capability in RSTOUTn_MASK register
  • use dedicated watchdog timer on A38X instead of second timer

Obtained from: Semihalf
Sponsored by: Stormshield
Submitted by: Bartosz Szczepanek <bsz@semihalf.com>

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

bsz_semihalf.com retitled this revision from to Add support for watchdog on Armada38x.
bsz_semihalf.com updated this object.
bsz_semihalf.com edited the test plan for this revision. (Show Details)
bsz_semihalf.com added reviewers: ian, imp.
bsz_semihalf.com set the repository for this revision to rS FreeBSD src repository - subversion.
bsz_semihalf.com added a project: ARM.
bsz_semihalf.com added a subscriber: zbb.

I don't fully understand why you are not attaching to the interrupt.

Interrupt is required by timers (we already use mpcore timers), watchdog doesn't need it. It simply resets system on timeout.

Can you change the data in mv_timer_compat to encode if the device is supported & if the interrupt is optional similar to how we do it in the mpcore timer driver. It would then simplify supporting new devices with this driver.

In D4423#94478, @andrew wrote:

Can you change the data in mv_timer_compat to encode if the device is supported & if the interrupt is optional similar to how we do it in the mpcore timer driver. It would then simplify supporting new devices with this driver.

Done.

zbb added a reviewer: zbb.
This revision is now accepted and ready to land.Jan 20 2016, 2:22 PM
This revision was automatically updated to reflect the committed changes.