devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/8] Watchdog support for Armada 375/38x SoC
@ 2014-03-12 21:11 Ezequiel Garcia
       [not found] ` <1394658715-2017-1-git-send-email-ezequiel.garcia-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
  0 siblings, 1 reply; 14+ messages in thread
From: Ezequiel Garcia @ 2014-03-12 21:11 UTC (permalink / raw)
  To: linux-watchdog-u79uwXL29TY76Z2rM5mHXA,
	devicetree-u79uwXL29TY76Z2rM5mHXA
  Cc: Jason Cooper, Guenter Roeck, Jason Gunthorpe, Andrew Lunn,
	Sebastian Hesselbarth, Lior Amsalem, Tawfik Bayouk,
	Thomas Petazzoni, Gregory Clement, Wim Van Sebroeck,
	Ezequiel Garcia

Third round of the patchset adding support for watchdog on Armada 375 and
Armada 38x SoCs.

The new Armada 375/385 SoCs have two registers for the watchdog RSTOUT:

 1. It has a dedicated register (similar to the one in A370/XP)
 2. Also has a bit in a shared RSTOUT register.

Therefore, in order to support this two-folded RSTOUT, we extend the 'reg'
property in the watchdog devicetree and require a new pair of cells to specify
the shared RSTOUT.

On the driver side, we need to implement per-SoC stop() and enabled()
functions. Such somewhat complex infrastructure is needed to ensure the driver
performs proper reset of the watchdog timer, by masking and disabling the
RSTOUT before the interrupt is enabled.

I've pushed a branch so people can test this easily, e.g. ensuring
no regressions on Dove, Kirkwood and A370/XP:

https://github.com/MISL-EBU-System-SW/mainline-public/tree/wdt_a385_a375_v3

Changes from v2:

  * Cleaned-up usage of atomic_io_modify(), using it only when needed.
    For instance, the RSTOUT dedicated register on Armada 370/375/380/XP
    can be safely access without any lock.

  * Use devm_ioremap_resource() for the non-shared registers. The shared
    registers need to use devm_ioremap(), which does not request the
    memory region.

Changes from v1:

  * Reworked entirely!

Ezequiel Garcia (8):
  watchdog: orion: Introduce a SoC-specific RSTOUT mapping
  watchdog: orion: Remove unneeded atomic access
  watchdog: orion: Introduce per-SoC stop() function
  watchdog: orion: Introduce per-SoC enabled() function
  watchdog: orion: Add Armada 375/380 SoC support
  ARM: mvebu: Enable Armada 375 watchdog in the devicetree
  ARM: mvebu: Enable Armada 380/385 watchdog in the devicetree
  ARM: mvebu: Add A375/A380 watchdog binding documentation

 .../devicetree/bindings/watchdog/marvel.txt        |   7 +
 arch/arm/boot/dts/armada-375.dtsi                  |   6 +
 arch/arm/boot/dts/armada-38x.dtsi                  |   7 +
 drivers/watchdog/orion_wdt.c                       | 180 +++++++++++++++++++--
 4 files changed, 188 insertions(+), 12 deletions(-)

-- 
1.9.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2014-03-19 22:21 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-12 21:11 [PATCH v3 0/8] Watchdog support for Armada 375/38x SoC Ezequiel Garcia
     [not found] ` <1394658715-2017-1-git-send-email-ezequiel.garcia-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
2014-03-12 21:11   ` [PATCH v3 1/8] watchdog: orion: Introduce a SoC-specific RSTOUT mapping Ezequiel Garcia
2014-03-12 21:11   ` [PATCH v3 2/8] watchdog: orion: Remove unneeded atomic access Ezequiel Garcia
2014-03-12 21:11   ` [PATCH v3 3/8] watchdog: orion: Introduce per-SoC stop() function Ezequiel Garcia
2014-03-12 21:11   ` [PATCH v3 4/8] watchdog: orion: Introduce per-SoC enabled() function Ezequiel Garcia
2014-03-12 21:11   ` [PATCH v3 5/8] watchdog: orion: Add Armada 375/380 SoC support Ezequiel Garcia
2014-03-12 21:11   ` [PATCH v3 6/8] ARM: mvebu: Enable Armada 375 watchdog in the devicetree Ezequiel Garcia
2014-03-12 21:11   ` [PATCH v3 7/8] ARM: mvebu: Enable Armada 380/385 " Ezequiel Garcia
2014-03-12 21:11   ` [PATCH v3 8/8] ARM: mvebu: Add A375/A380 watchdog binding documentation Ezequiel Garcia
2014-03-12 21:43   ` [PATCH v3 0/8] Watchdog support for Armada 375/38x SoC Jason Gunthorpe
     [not found]     ` <20140312214312.GA14357-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2014-03-12 21:54       ` Ezequiel Garcia
     [not found]         ` <20140312215456.GA13340-nAQHv47ARr+vIlHkl8J1cg@public.gmane.org>
2014-03-19 22:21           ` Jason Gunthorpe
2014-03-14 22:21   ` Guenter Roeck
     [not found]     ` <532380EA.7010809-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
2014-03-14 22:35       ` Ezequiel Garcia

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).