watchdog: jz4740: Use WDT clock provided by TCU driver
authorPaul Cercueil <paul@crapouillou.net>
Wed, 23 Oct 2019 17:47:12 +0000 (19:47 +0200)
committerWim Van Sebroeck <wim@linux-watchdog.org>
Mon, 18 Nov 2019 19:14:46 +0000 (20:14 +0100)
commit1d9c30745455c42bff07f500fc6ecaf4c10e942f
tree9354f3aaa5bd92adb75381397767867e3fab440f
parent74f078c333e96f0c2d7fe8d932773d39aceeca12
watchdog: jz4740: Use WDT clock provided by TCU driver

Instead of requesting the "ext" clock and handling the watchdog clock
divider and gating in the watchdog driver, we now request and use the
"wdt" clock that is supplied by the ingenic-timer "TCU" driver.

The major benefit is that the watchdog's clock rate and parent can now
be specified from within devicetree, instead of hardcoded in the driver.

Also, this driver won't poke anymore into the TCU registers to
enable/disable the clock, as this is now handled by the TCU driver.

On the bad side, we break the ABI with devicetree - as we now request a
different clock. In this very specific case it is still okay, as every
Ingenic JZ47xx-based board out there compile the devicetree within the
kernel; so it's still time to push breaking changes, in order to get a
clean devicetree that won't break once it musn't.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Tested-by: Mathieu Malaterre <malat@debian.org>
Tested-by: Artur Rojek <contact@artur-rojek.eu>
Acked-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191023174714.14362-1-paul@crapouillou.net
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>
drivers/watchdog/Kconfig
drivers/watchdog/jz4740_wdt.c