Re: [PATCH v12 4/4] Watchdog: introduce ARM SBSA watchdog driver
From: Fu Wei
Date: Tue Feb 16 2016 - 11:33:31 EST
On 16 February 2016 at 23:54, Fu Wei <fu.wei@xxxxxxxxxx> wrote:
> On 16 February 2016 at 23:29, Guenter Roeck <linux@xxxxxxxxxxxx> wrote:
>> 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/
>
> sorry, my bad, will fix it
>
>>
>> [ ... ]
>>
>>> +
>>> +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 ?
>
> For now, I thinks we don't need it, Hope I didn't miss something :-)
> Because this module can be mounted automatically with dtb or ACPI(if
> apply my GTDT patch).
> Do you have any suggestion or concern? :-)
re-think about that , will add
MODULE_ALIAS("platform:sbsa-gwdt");
Do you agree ? :-)
>
>>
>> Guenter
>>
>
>
>
> --
> Best regards,
>
> Fu Wei
> Software Engineer
> Red Hat Software (Beijing) Co.,Ltd.Shanghai Branch
> Ph: +86 21 61221326(direct)
> Ph: +86 186 2020 4684 (mobile)
> Room 1512, Regus One Corporate Avenue,Level 15,
> One Corporate Avenue,222 Hubin Road,Huangpu District,
> Shanghai,China 200021
--
Best regards,
Fu Wei
Software Engineer
Red Hat Software (Beijing) Co.,Ltd.Shanghai Branch
Ph: +86 21 61221326(direct)
Ph: +86 186 2020 4684 (mobile)
Room 1512, Regus One Corporate Avenue,Level 15,
One Corporate Avenue,222 Hubin Road,Huangpu District,
Shanghai,China 200021