watchdog: add a driver to support SAMA5D4 watchdog timer
authorWenyou Yang <wenyou.yang@atmel.com>
Thu, 6 Aug 2015 10:16:46 +0000 (18:16 +0800)
committerWim Van Sebroeck <wim@iguana.be>
Wed, 9 Sep 2015 19:38:29 +0000 (21:38 +0200)
commit76534860f108b812926a4fbfbdadbfa9cdec89d0
treec8eccc6ed7907af62386a4b280b179d698819763
parentf8c33e9717150f7b8063d6d77a8ea90adad434e9
watchdog: add a driver to support SAMA5D4 watchdog timer

From SAMA5D4, the watchdog timer is upgrated with a new feature,
which is describled as in the datasheet, "WDT_MR can be written
until a LOCKMR command is issued in WDT_CR".
That is to say, as long as the bootstrap and u-boot don't issue
a LOCKMR command, WDT_MR can be written more than once in the driver.

So the SAMA5D4 watchdog driver's implementation is different from
the at91sam9260 watchdog driver implemented in file at91sam9_wdt.c.
The user application open the device file to enable the watchdog timer
hardware, and close to disable it, and set the watchdog timer timeout
by seting WDV and WDD fields of WDT_MR register, and ping the watchdog
by issuing WDRSTT command to WDT_CR register with hard-coded key.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
drivers/watchdog/Kconfig
drivers/watchdog/Makefile
drivers/watchdog/at91sam9_wdt.h
drivers/watchdog/sama5d4_wdt.c [new file with mode: 0644]