Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1f93d2ab authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull watchdog updates from Wim Van Sebroeck:

 - add support for Fintek F81865 Super-IO chip

 - add support for watchdogs (RWDT and SWDT) found on RCar Gen3 based
   SoCs from Renesas

 - octeon: Handle the FROZEN hot plug notifier actions

 - f71808e_wdt fixes and cleanups

 - some small improvements in code and documentation

* git://www.linux-watchdog.org/linux-watchdog:
  MAINTAINERS: Add file patterns for watchdog device tree bindings
  Documentation: Add ebc-c384_wdt watchdog-parameters.txt entry
  watchdog: shwdt: Use setup_timer()
  watchdog: cpwd: Use setup_timer()
  arm64: defconfig: enable Renesas Watchdog Timer
  watchdog: renesas-wdt: add driver
  watchdog: remove error message when unable to allocate watchdog device
  watchdog: f71808e_wdt: Fix WDTMOUT_STS register read
  watchdog: f71808e_wdt: Fix typo
  watchdog: f71808e_wdt: Add F81865 support
  watchdog: sp5100_tco: properly check for new register layouts
  watchdog: core: Fix circular locking dependency
  watchdog: core: fix trivial typo in a comment
  watchdog: hpwdt: Adjust documentation to match latest kernel module parameters.
  watchdog: imx2_wdt: add external reset support via dt prop
  watchdog: octeon: Handle the FROZEN hot plug notifier actions.
  watchdog: qcom: Report reboot reason
parents 48dd7cef 540be8b2
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -5,10 +5,12 @@ Required properties:
- reg : Should contain WDT registers location and length
- interrupts : Should contain WDT interrupt

Optional property:
Optional properties:
- big-endian: If present the watchdog device's registers are implemented
  in big endian mode, otherwise in native mode(same with CPU), for more
  detail please see: Documentation/devicetree/bindings/regmap/regmap.txt.
- fsl,ext-reset-output: If present the watchdog device is configured to
  assert its external reset (WDOG_B) instead of issuing a software reset.

Examples:

+25 −0
Original line number Diff line number Diff line
Renesas Watchdog Timer (WDT) Controller

Required properties:
- compatible : Should be "renesas,r8a7795-wdt", or "renesas,rcar-gen3-wdt"

  When compatible with the generic version, nodes must list the SoC-specific
  version corresponding to the platform first, followed by the generic
  version.

- reg : Should contain WDT registers location and length
- clocks : the clock feeding the watchdog timer.

Optional properties:
- timeout-sec : Contains the watchdog timeout in seconds
- power-domains : the power domain the WDT belongs to

Examples:

	wdt0: watchdog@e6020000 {
		compatible = "renesas,r8a7795-wdt", "renesas,rcar-gen3-wdt";
		reg = <0 0xe6020000 0 0x0c>;
		clocks = <&cpg CPG_MOD 402>;
		power-domains = <&cpg>;
		timeout-sec = <60>;
	};
+30 −27
Original line number Diff line number Diff line
Last reviewed: 06/02/2009
Last reviewed: 04/04/2016

                     HP iLO2 NMI Watchdog Driver
              NMI sourcing for iLO2 based ProLiant Servers
                     HPE iLO NMI Watchdog Driver
              NMI sourcing for iLO based ProLiant Servers
                     Documentation and Driver by
              Thomas Mingarelli <thomas.mingarelli@hp.com>
              Thomas Mingarelli <thomas.mingarelli@hpe.com>

 The HP iLO2 NMI Watchdog driver is a kernel module that provides basic
 The HPE iLO NMI Watchdog driver is a kernel module that provides basic
 watchdog functionality and the added benefit of NMI sourcing. Both the
 watchdog functionality and the NMI sourcing capability need to be enabled
 by the user. Remember that the two modes are not dependent on one another.
 A user can have the NMI sourcing without the watchdog timer and vice-versa.
 All references to iLO in this document imply it also works on iLO2 and all
 subsequent generations.

 Watchdog functionality is enabled like any other common watchdog driver. That
 is, an application needs to be started that kicks off the watchdog timer. A
 basic application exists in the Documentation/watchdog/src directory called
 watchdog-test.c. Simply compile the C file and kick it off. If the system
 gets into a bad state and hangs, the HP ProLiant iLO 2 timer register will
 gets into a bad state and hangs, the HPE ProLiant iLO timer register will
 not be updated in a timely fashion and a hardware system reset (also known as
 an Automatic Server Recovery (ASR)) event will occur.

 The hpwdt driver also has four (4) module parameters. They are the following:
 The hpwdt driver also has three (3) module parameters. They are the following:

 soft_margin - allows the user to set the watchdog timer value
 allow_kdump - allows the user to save off a kernel dump image after an NMI
 soft_margin - allows the user to set the watchdog timer value.
               Default value is 30 seconds.
 allow_kdump - allows the user to save off a kernel dump image after an NMI.
               Default value is 1/ON
 nowayout    - basic watchdog parameter that does not allow the timer to
               be restarted or an impending ASR to be escaped.
 priority    - determines whether or not the hpwdt driver is first on the
               die_notify list to handle NMIs or last. The default value
               for this module parameter is 0 or LAST. If the user wants to
               enable NMI sourcing then reload the hpwdt driver with
               priority=1 (and boot with nmi_watchdog=0).
               Default value is set when compiling the kernel. If it is set
               to "Y", then there is no way of disabling the watchdog once
               it has been started.

 NOTE: More information about watchdog drivers in general, including the ioctl
       interface to /dev/watchdog can be found in
       Documentation/watchdog/watchdog-api.txt and Documentation/IPMI.txt.

 The priority parameter was introduced due to other kernel software that relied
 on handling NMIs (like oprofile). Keeping hpwdt's priority at 0 (or LAST)
 enables the users of NMIs for non critical events to be work as expected.

 The NMI sourcing capability is disabled by default due to the inability to
 distinguish between "NMI Watchdog Ticks" and "HW generated NMI events" in the
 Linux kernel. What this means is that the hpwdt nmi handler code is called
 each time the NMI signal fires off. This could amount to several thousands of
 NMIs in a matter of seconds. If a user sees the Linux kernel's "dazed and
 confused" message in the logs or if the system gets into a hung state, then
 the hpwdt driver can be reloaded with the "priority" module parameter set
 (priority=1).
 the hpwdt driver can be reloaded.

 1. If the kernel has not been booted with nmi_watchdog turned off then
    edit /boot/grub/menu.lst and place the nmi_watchdog=0 at the end of the
    currently booting kernel line.
    edit and place the nmi_watchdog=0 at the end of the currently booting
    kernel line. Depending on your Linux distribution and platform setup:
    For non-UEFI systems
       /boot/grub/grub.conf   or
       /boot/grub/menu.lst
    For UEFI systems
      /boot/efi/EFI/distroname/grub.conf   or
      /boot/efi/efi/distroname/elilo.conf
 2. reboot the sever
 3. Once the system comes up perform a rmmod hpwdt
 4. insmod /lib/modules/`uname -r`/kernel/drivers/char/watchdog/hpwdt.ko priority=1
 3. Once the system comes up perform a modprobe -r hpwdt
 4. modprobe /lib/modules/`uname -r`/kernel/drivers/watchdog/hpwdt.ko

 Now, the hpwdt can successfully receive and source the NMI and provide a log
 message that details the reason for the NMI (as determined by the HP BIOS).
 message that details the reason for the NMI (as determined by the HPE BIOS).

 Below is a list of NMIs the HP BIOS understands along with the associated
 Below is a list of NMIs the HPE BIOS understands along with the associated
 code (reason):

	No source found                00h
@@ -92,4 +95,4 @@ Last reviewed: 06/02/2009


 -- Tom Mingarelli
    (thomas.mingarelli@hp.com)
    (thomas.mingarelli@hpe.com)
+4 −0
Original line number Diff line number Diff line
@@ -86,6 +86,10 @@ nowayout: Watchdog cannot be stopped once started
davinci_wdt:
heartbeat: Watchdog heartbeat period in seconds from 1 to 600, default 60
-------------------------------------------------
ebc-c384_wdt:
timeout: Watchdog timeout in seconds. (1<=timeout<=15300, default=60)
nowayout: Watchdog cannot be stopped once started
-------------------------------------------------
ep93xx_wdt:
nowayout: Watchdog cannot be stopped once started
timeout: Watchdog timeout in seconds. (1<=timeout<=3600, default=TBD)
+1 −0
Original line number Diff line number Diff line
@@ -12345,6 +12345,7 @@ L: linux-watchdog@vger.kernel.org
W:	http://www.linux-watchdog.org/
T:	git git://www.linux-watchdog.org/linux-watchdog.git
S:	Maintained
F:	Documentation/devicetree/bindings/watchdog/
F:	Documentation/watchdog/
F:	drivers/watchdog/
F:	include/linux/watchdog.h
Loading