watchdog: pretimeout: add option to select a pretimeout governor in runtime
authorVladimir Zapolskiy <vladimir_zapolskiy@mentor.com>
Fri, 7 Oct 2016 12:37:00 +0000 (15:37 +0300)
committerWim Van Sebroeck <wim@iguana.be>
Sat, 8 Oct 2016 08:27:20 +0000 (10:27 +0200)
commit53f96cee1aff74c8ee3c5f7a25df0c01d7117eeb
tree37a838b634be099db8b442e13d13686c1a3f1b4e
parentda0d12ff2b829a35e9921918e925d79497b82bef
watchdog: pretimeout: add option to select a pretimeout governor in runtime

The change converts watchdog device attribute "pretimeout_governor" from
read-only to read-write type to allow users to select a desirable
watchdog pretimeout governor in runtime, e.g.

  % echo -n panic > /sys/..../watchdog/watchdog0/pretimeout

To get this working a list of registered pretimeout governors is created
and a new helper function watchdog_pretimeout_governor_set() is exported
to watchdog_dev.c.

If a selected governor is gone, a watchdog device pretimeout notification
is delegated to a default built-in pretimeout governor.

Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
drivers/watchdog/watchdog_dev.c
drivers/watchdog/watchdog_pretimeout.c
drivers/watchdog/watchdog_pretimeout.h