On 02/16/2016 12:36 AM, fu.wei@xxxxxxxxxx wrote:
From: Fu Wei <fu.wei@xxxxxxxxxx> According to Server Base System Architecture (SBSA) specification, the SBSA Generic Watchdog has two stage timeouts: the first signal (WS0) is for alerting the system by interrupt, the second one (WS1) is a real hardware reset. More details about the hardware specification of this device: ARM DEN0029B - Server Base System Architecture (SBSA) This driver can operate ARM SBSA Generic Watchdog as a single stage watchdog or a two stages watchdog, it's set up by the module parameter "action". In the single stage mode, when the timeout is reached, your system will be reset by WS1. The first signal (WS0) is ignored. In the two stages mode, when the timeout is reached, the first signal (WS0) will trigger panic. If the system is getting into trouble and cannot be reset by panic or restart properly by the kdump kernel(if supported), then the second stage (as long as the first stage) will be reached, system will be reset by WS1. This function can help administrator to backup the system context info by panic console output or kdump. This driver bases on linux kernel watchdog framework, so it can get timeout from module parameter and FDT at the driver init stage. Signed-off-by: Fu Wei <fu.wei@xxxxxxxxxx> Reviewed-by: Graeme Gregory <graeme.gregory@xxxxxxxxxx> Tested-by: Pratyush Anand <panand@xxxxxxxxxx> Acked-by: Timur Tabi <timur@xxxxxxxxxxxxxx> Reviewed-by: Mathieu Poirier <mathieu.poirier@xxxxxxxxxx> --- drivers/watchdog/Kconfig | 20 +++ drivers/watchdog/Makefile | 1 + drivers/watchdog/sbsa_gwdt.c | 403 +++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 424 insertions(+) diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig index 0f6d851..ed9a5cb 100644 --- a/drivers/watchdog/Kconfig +++ b/drivers/watchdog/Kconfig
[ ... ]
+ +static int sbsa_gwdt_probe(struct platform_device *pdev) +{
[ ... ]
+ if (!action) + dev_warn(dev, "falling back to signle stage mode.\n");
Still: s/signle/single/ [ ... ]
+ +MODULE_DESCRIPTION("SBSA Generic Watchdog Driver"); +MODULE_AUTHOR("Fu Wei <fu.wei@xxxxxxxxxx>"); +MODULE_AUTHOR("Suravee Suthikulpanit <Suravee.Suthikulpanit@xxxxxxx>"); +MODULE_AUTHOR("Al Stone <al.stone@xxxxxxxxxx>"); +MODULE_AUTHOR("Timur Tabi <timur@xxxxxxxxxxxxxx>"); +MODULE_LICENSE("GPL v2");
Do you need a MODULE_ALIAS ? Guenter -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html