diff options
author | Jean-Baptiste Theou <jtheou@adeneo-embedded.us> | 2015-06-09 09:55:02 -0700 |
---|---|---|
committer | Wim Van Sebroeck <wim@iguana.be> | 2015-06-29 11:51:06 +0200 |
commit | ef90174f821041313d42d99c1c8b35a3af64a910 (patch) | |
tree | 0265d89b6ee866b7e20a8925fae03e290e078e00 /Documentation/watchdog | |
parent | b9be9660ba2d23259e4a430a44167ef441dc5fe6 (diff) | |
download | linux-ef90174f821041313d42d99c1c8b35a3af64a910.tar.gz linux-ef90174f821041313d42d99c1c8b35a3af64a910.tar.bz2 linux-ef90174f821041313d42d99c1c8b35a3af64a910.zip |
watchdog: watchdog_core: Add watchdog registration deferral mechanism
Currently, watchdog subsystem require the misc subsystem to
register a watchdog. This may not be the case in case of an
early registration of a watchdog, which can be required when
the watchdog cannot be disabled.
This patch introduces a deferral mechanism to remove this requirement.
Signed-off-by: Jean-Baptiste Theou <jtheou@adeneo-embedded.us>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Diffstat (limited to 'Documentation/watchdog')
-rw-r--r-- | Documentation/watchdog/watchdog-kernel-api.txt | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Documentation/watchdog/watchdog-kernel-api.txt b/Documentation/watchdog/watchdog-kernel-api.txt index a0438f3957ca..d8b0d3367706 100644 --- a/Documentation/watchdog/watchdog-kernel-api.txt +++ b/Documentation/watchdog/watchdog-kernel-api.txt @@ -36,6 +36,10 @@ The watchdog_unregister_device routine deregisters a registered watchdog timer device. The parameter of this routine is the pointer to the registered watchdog_device structure. +The watchdog subsystem includes an registration deferral mechanism, +which allows you to register an watchdog as early as you wish during +the boot process. + The watchdog device structure looks like this: struct watchdog_device { @@ -52,6 +56,7 @@ struct watchdog_device { void *driver_data; struct mutex lock; unsigned long status; + struct list_head deferred; }; It contains following fields: @@ -80,6 +85,8 @@ It contains following fields: information about the status of the device (Like: is the watchdog timer running/active, is the nowayout bit set, is the device opened via the /dev/watchdog interface or not, ...). +* deferred: entry in wtd_deferred_reg_list which is used to + register early initialized watchdogs. The list of watchdog operations is defined as: |