On Fri, Feb 03, 2017 at 02:47:29PM -0500, Sebastien Bourdelin wrote:
This watchdog is instantiated in a FPGA and can only be access using a
GPIOs bit-banged bus, called the NBUS by Technologic Systems.
The watchdog is made of only one register, called the feed register.
Writing to this register will re-arm the watchdog for a given time (and
enable it if it was disable). It can be disabled by writing a special
value into it.
---
Changes v1 -> v2:
- rebase on master
- retrieve the ts_nbus instantiated by the parent node (suggested by
Linus Walleij)
- rename the wdt by watchdog in the device tree and in the
documentation (suggested by Rob Herring)
- add a dependency to the TS_NBUS driver in the Kconfig (suggested by
Guenter Roeck)
- simplify the set_timeout function (suggested by Guenter Roeck)
- use the max_hw_heartbeat_ms callback instead of the max_timeout
callback (suggested by Guenter Roeck)
Signed-off-by: Sebastien Bourdelin <redacted>
---
.../devicetree/bindings/watchdog/ts4600-wdt.txt | 16 ++
arch/arm/boot/dts/imx28-ts4600-common.dtsi | 5 +
Acked-by: Rob Herring <robh@kernel.org>
drivers/watchdog/Kconfig | 11 ++
drivers/watchdog/Makefile | 1 +
drivers/watchdog/ts4600_wdt.c | 217 +++++++++++++++++++++
5 files changed, 250 insertions(+)
create mode 100644 Documentation/devicetree/bindings/watchdog/ts4600-wdt.txt
create mode 100644 drivers/watchdog/ts4600_wdt.c