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)
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]

Simple merge
Simple merge
Simple merge
Simple merge