Commit 3d33e6dd authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'linux-watchdog-6.1-rc1' of git://www.linux-watchdog.org/linux-watchdog

Pull watchdog updates from Wim Van Sebroeck:

 - new driver for Exar/MaxLinear XR28V38x

 - support for exynosautov9 SoC

 - support for Renesas R-Car V5H (R8A779G0) and RZ/V2M (r9a09g011) SoC

 - support for imx93

 - several other fixes and improvements

* tag 'linux-watchdog-6.1-rc1' of git://www.linux-watchdog.org/linux-watchdog: (36 commits)
  watchdog: twl4030_wdt: add missing mod_devicetable.h include
  dt-bindings: watchdog: migrate mt7621 text bindings to YAML
  watchdog: sp5100_tco: Add "action" module parameter
  watchdog: imx93: add watchdog timer on imx93
  watchdog: imx7ulp_wdt: init wdog when it was active
  watchdog: imx7ulp_wdt: Handle wdog reconfigure failure
  watchdog: imx7ulp_wdt: Fix RCS timeout issue
  watchdog: imx7ulp_wdt: Check CMD32EN in wdog init
  watchdog: imx7ulp: Add explict memory barrier for unlock sequence
  watchdog: imx7ulp: Move suspend/resume to noirq phase
  watchdog: rti-wdt:using the pm_runtime_resume_and_get to simplify the code
  dt-bindings: watchdog: rockchip: add rockchip,rk3128-wdt
  watchdog: s3c2410_wdt: support exynosautov9 watchdog
  dt-bindings: watchdog: add exynosautov9 compatible
  watchdog: npcm: Enable clock if provided
  watchdog: meson: keep running if already active
  watchdog: dt-bindings: atmel,at91sam9-wdt: convert to json-schema
  watchdog: armada_37xx_wdt: Fix .set_timeout callback
  watchdog: sa1100: make variable sa1100dog_driver static
  watchdog: w83977f_wdt: Fix comment typo
  ...
parents 524d0c68 099d387e
Loading
Loading
Loading
Loading
+127 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (C) 2022 Microchip Technology, Inc. and its subsidiaries
%YAML 1.2
---
$id: http://devicetree.org/schemas/watchdog/atmel,at91sam9-wdt.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Atmel Watchdog Timers

maintainers:
  - Eugen Hristev <eugen.hristev@microchip.com>

properties:
  compatible:
    const: atmel,at91sam9260-wdt

  reg:
    maxItems: 1

  clocks:
    maxItems: 1

  interrupts:
    maxItems: 1

  atmel,max-heartbeat-sec:
    description:
      Should contain the maximum heartbeat value in seconds. This value
      should be less or equal to 16. It is used to compute the WDV field.
    maximum: 16

  atmel,min-heartbeat-sec:
    description:
      Should contain the minimum heartbeat value in seconds. This value
      must be smaller than the max-heartbeat-sec value. It is used to
      compute the WDD field.
    maximum: 16

  atmel,watchdog-type:
    $ref: /schemas/types.yaml#/definitions/string
    description: |
      Should be hardware or software.
    oneOf:
      - description:
          Hardware watchdog uses the at91 watchdog reset.
        const: hardware
      - description: |
          Software watchdog uses the watchdog interrupt
          to trigger a software reset.
        const: software
    default: hardware

  atmel,reset-type:
    $ref: /schemas/types.yaml#/definitions/string
    description: |
      Should be proc or all. This is valid only when using hardware watchdog.
    oneOf:
      - description:
          Assert peripherals and processor reset signals.
        const: all
      - description:
          Assert the processor reset signal.
        const: proc
    default: all

  atmel,disable:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      Should be present if you want to stop the watchdog.

  atmel,idle-halt:
    $ref: /schemas/types.yaml#/definitions/flag
    description: |
      Should be present if you want to stop the watchdog when
      entering idle state.
      CAUTION: This property should be used with care, it actually makes the
      watchdog not counting when the CPU is in idle state, therefore the
      watchdog reset time depends on mean CPU usage and will not reset at all
      if the CPU stops working while it is in idle state, which is probably
      not what you want.

  atmel,dbg-halt:
    $ref: /schemas/types.yaml#/definitions/flag
    description: |
      Should be present if you want to stop the watchdog when
      entering debug state.

required:
  - compatible
  - reg
  - clocks

allOf:
  - $ref: watchdog.yaml#
  - if:
      properties:
        atmel,reset-type:
          enum:
            - all
            - proc
    then:
      properties:
        atmel,watchdog-type:
          const: hardware

dependencies:
  atmel,reset-type: ['atmel,watchdog-type']

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>

    watchdog@fffffd40 {
        compatible = "atmel,at91sam9260-wdt";
        reg = <0xfffffd40 0x10>;
        interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
        clocks = <&clk32k>;
        timeout-sec = <15>;
        atmel,watchdog-type = "hardware";
        atmel,reset-type = "all";
        atmel,dbg-halt;
        atmel,idle-halt;
        atmel,max-heartbeat-sec = <16>;
        atmel,min-heartbeat-sec = <0>;
    };
+0 −51
Original line number Diff line number Diff line
* Atmel Watchdog Timers

** at91sam9-wdt

Required properties:
- compatible: must be "atmel,at91sam9260-wdt".
- reg: physical base address of the controller and length of memory mapped
  region.
- clocks: phandle to input clock.

Optional properties:
- timeout-sec: contains the watchdog timeout in seconds.
- interrupts : Should contain WDT interrupt.
- atmel,max-heartbeat-sec : Should contain the maximum heartbeat value in
	seconds. This value should be less or equal to 16. It is used to
	compute the WDV field.
- atmel,min-heartbeat-sec : Should contain the minimum heartbeat value in
	seconds. This value must be smaller than the max-heartbeat-sec value.
	It is used to compute the WDD field.
- atmel,watchdog-type : Should be "hardware" or "software". Hardware watchdog
	use the at91 watchdog reset. Software watchdog use the watchdog
	interrupt to trigger a software reset.
- atmel,reset-type : Should be "proc" or "all".
	"all" : assert peripherals and processor reset signals
	"proc" : assert the processor reset signal
	This is valid only when using "hardware" watchdog.
- atmel,disable : Should be present if you want to disable the watchdog.
- atmel,idle-halt : Should be present if you want to stop the watchdog when
	entering idle state.
	CAUTION: This property should be used with care, it actually makes the
	watchdog not counting when the CPU is in idle state, therefore the
	watchdog reset time depends on mean CPU usage and will not reset at all
	if the CPU stop working while it is in idle state, which is probably
	not what you want.
- atmel,dbg-halt : Should be present if you want to stop the watchdog when
	entering debug state.

Example:
	watchdog@fffffd40 {
		compatible = "atmel,at91sam9260-wdt";
		reg = <0xfffffd40 0x10>;
		interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
		clocks = <&clk32k>;
		timeout-sec = <15>;
		atmel,watchdog-type = "hardware";
		atmel,reset-type = "all";
		atmel,dbg-halt;
		atmel,idle-halt;
		atmel,max-heartbeat-sec = <16>;
		atmel,min-heartbeat-sec = <0>;
	};
+33 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/watchdog/mediatek,mt7621-wdt.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Ralink Watchdog Timers

maintainers:
  - Sergio Paracuellos <sergio.paracuellos@gmail.com>

allOf:
  - $ref: watchdog.yaml#

properties:
  compatible:
    const: mediatek,mt7621-wdt

  reg:
    maxItems: 1

required:
  - compatible
  - reg

additionalProperties: false

examples:
  - |
    watchdog@100 {
      compatible = "mediatek,mt7621-wdt";
      reg = <0x100 0x100>;
    };
+0 −12
Original line number Diff line number Diff line
Ralink Watchdog Timers

Required properties:
- compatible: must be "mediatek,mt7621-wdt"
- reg: physical base address of the controller and length of the register range

Example:

	watchdog@100 {
		compatible = "mediatek,mt7621-wdt";
		reg = <0x100 0x10>;
	};
+0 −26
Original line number Diff line number Diff line
Xilinx AXI/PLB soft-core watchdog Device Tree Bindings
---------------------------------------------------------

Required properties:
- compatible		: Should be "xlnx,xps-timebase-wdt-1.00.a" or
			  "xlnx,xps-timebase-wdt-1.01.a".
- reg			: Physical base address and size

Optional properties:
- clocks		: Input clock specifier. Refer to common clock
			  bindings.
- clock-frequency	: Frequency of clock in Hz
- xlnx,wdt-enable-once	: 0 - Watchdog can be restarted
			  1 - Watchdog can be enabled just once
- xlnx,wdt-interval	: Watchdog timeout interval in 2^<val> clock cycles,
			  <val> is integer from 8 to 31.

Example:
axi-timebase-wdt@40100000 {
	clock-frequency = <50000000>;
	compatible = "xlnx,xps-timebase-wdt-1.00.a";
	clocks = <&clkc 15>;
	reg = <0x40100000 0x10000>;
	xlnx,wdt-enable-once = <0x0>;
	xlnx,wdt-interval = <0x1b>;
} ;
Loading