Hi Guenter, Any suggestion on this v6 patchset, for now , I only got : (1) delete WCV output: diff --git a/drivers/watchdog/sbsa_gwdt.c b/drivers/watchdog/sbsa_gwdt.c index 2de5899..c42883b 100644 --- a/drivers/watchdog/sbsa_gwdt.c +++ b/drivers/watchdog/sbsa_gwdt.c @@ -344,8 +342,7 @@ static int sbsa_gwdt_probe(struct platform_device *pdev) status = readl_relaxed(gwdt->control_base + SBSA_GWDT_WCS); if (status & SBSA_GWDT_WCS_WS1) { - dev_warn(dev, "System reset by WDT(WCV: %llx)\n", - sbsa_gwdt_get_wcv(wdd)); + dev_warn(dev, "System reset by WDT.\n"); wdd->bootstatus |= WDIOF_CARDRESET; } else if (status == (SBSA_GWDT_WCS_WS0 | SBSA_GWDT_WCS_EN)) { gwdt->ws0_mode = true; any question or anything I can improve for this patchset? Great thanks for your help. On 23 June 2015 at 22:16, <fu.wei@xxxxxxxxxx> wrote: > From: Fu Wei <fu.wei@xxxxxxxxxx> > > This patchset: > (1)Introduce Documentation/devicetree/bindings/watchdog/sbsa-gwdt.txt > for FDT info of SBSA Generic Watchdog, and give two examples of > adding SBSA Generic Watchdog device node into the dts files: > foundation-v8.dts and amd-seattle-soc.dtsi. > > (2)Introduce "pretimeout" into the watchdog framework, and update > Documentation/watchdog/watchdog-kernel-api.txt to introduce: > (1)the new elements in the watchdog_device and watchdog_ops struct; > (2)the new API "watchdog_init_timeouts". > > (3)Introduce ARM SBSA watchdog driver: > a.Use linux kernel watchdog framework; > b.Work with FDT on ARM64; > c.Use "pretimeout" in watchdog framework; > d.Support getting timeout and pretimeout from parameter and FDT > at the driver init stage. > e.In the first timeout, do panic to save system context; > f.In the second stage, user can still feed the dog without > cleaning WS0. By this feature, we can avoid the panic infinite > loops, while backing up a large system context in a server. > g.In the second stage, can trigger WS1 by setting pretimeout = 0 > if necessary. > > (4)Introduce ACPI GTDT parser: drivers/acpi/gtdt.c > Parse SBSA Generic Watchdog Structure in GTDT table of ACPI, > and create a platform device with that information. > This platform device can be used by This Watchdog driver. > drivers/clocksource/arm_arch_timer.c is simplified by this GTDT support. > > This patchset has been tested with watchdog daemon > (ACPI/FDT, module/build-in) on the following platforms: > (1)ARM Foundation v8 model > > Changelog: > v6: Improve the dtb example files: reduce the register frame size to 4K. > Improve pretimeout support: > (1) improve watchdog_init_timeouts function > (2) rename watchdog_check_min_max_timeouts back to the original name > (1) improve watchdog_timeout_invalid/watchdog_pretimeout_invalid > Add the new features in the sbsa_gwdt driver: > (1) In the second stage, user can feed the dog without cleaning WS0. > (2) In the second stage, user can trigger WS1 by setting pretimeout = 0. > (3) expand the max value of pretimeout, in case 10 second is not enough > for a kdump kernel reboot in panic. > > v5: Improve pretimeout support: > (1)fix typo in documentation and comments. > (2)fix the timeout limits validation bug. > Simplify sbsa_gwdt driver: > (1)integrate all the registers access functions into caller. > > v4: Refactor GTDT support code: remove it from arch/arm64/kernel/acpi.c, > put it into drivers/acpi/gtdt.c file. > Integrate the GTDT code of drivers/clocksource/arm_arch_timer.c into > drivers/acpi/gtdt.c. > Improve pretimeout support, fix "pretimeout == 0" problem. > Simplify sbsa_gwdt driver: > (1)timeout/pretimeout limits setup; > (2)keepalive function; > (3)delete "clk == 0" check; > (4)delete WS0 status bit check in interrupt routine; > (5)sbsa_gwdt_set_wcv function. > > v3: Delete "export arch_timer_get_rate" patch. > Driver back to use arch_timer_get_cntfrq. > Improve watchdog_init_timeouts function and update relevant documentation. > Improve watchdog_timeout_invalid and watchdog_pretimeout_invalid. > Improve foundation-v8.dts: delete the unnecessary tag of device node. > Remove "ARM64 || COMPILE_TEST" from Kconfig. > Add comments in arch/arm64/kernel/acpi.c > Fix typoes and incorrect comments. > > v2: Improve watchdog-kernel-api.txt documentation for pretimeout support. > Export "arch_timer_get_rate" in arm_arch_timer.c. > Add watchdog_init_timeouts API for pretimeout support in framework. > Improve suspend and resume foundation in driver > Improve timeout/pretimeout values init code in driver. > Delete unnecessary items of the sbsa_gwdt struct and #define. > Delete all unnecessary debug info in driver. > Fix 64bit division bug. > Use the arch_timer interface to get watchdog clock rate. > Add MODULE_DEVICE_TABLE for platform device id. > Fix typoes. > > v1: The first version upstream patchset to linux mailing list. > > Fu Wei (8): > Documentation: add sbsa-gwdt.txt documentation > ARM64: add SBSA Generic Watchdog device node in foundation-v8.dts > ARM64: add SBSA Generic Watchdog device node in amd-seattle-soc.dtsi > Watchdog: introdouce "pretimeout" into framework > Watchdog: introduce ARM SBSA watchdog driver > ACPI: add GTDT table parse driver into ACPI driver > Watchdog: enable ACPI GTDT support for ARM SBSA watchdog driver > clocksource: simplify ACPI code in arm_arch_timer.c > > .../devicetree/bindings/watchdog/sbsa-gwdt.txt | 36 ++ > Documentation/watchdog/watchdog-kernel-api.txt | 47 ++- > arch/arm64/boot/dts/amd/amd-seattle-soc.dtsi | 11 + > arch/arm64/boot/dts/arm/foundation-v8.dts | 10 + > arch/arm64/kernel/time.c | 4 +- > drivers/acpi/Kconfig | 9 + > drivers/acpi/Makefile | 1 + > drivers/acpi/gtdt.c | 180 ++++++++ > drivers/clocksource/Kconfig | 1 + > drivers/clocksource/arm_arch_timer.c | 60 +-- > drivers/watchdog/Kconfig | 15 + > drivers/watchdog/Makefile | 1 + > drivers/watchdog/sbsa_gwdt.c | 455 +++++++++++++++++++++ > drivers/watchdog/watchdog_core.c | 98 +++-- > drivers/watchdog/watchdog_dev.c | 53 +++ > include/clocksource/arm_arch_timer.h | 8 + > include/linux/acpi.h | 5 + > include/linux/clocksource.h | 4 +- > include/linux/watchdog.h | 39 +- > 19 files changed, 947 insertions(+), 90 deletions(-) > create mode 100644 Documentation/devicetree/bindings/watchdog/sbsa-gwdt.txt > create mode 100644 drivers/acpi/gtdt.c > create mode 100644 drivers/watchdog/sbsa_gwdt.c > > -- > 1.9.1 > -- 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 -- 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