# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/watchdog/samsung-wdt.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Samsung SoC Watchdog Timer Controller

maintainers:
  - Krzysztof Kozlowski <krzk@kernel.org>

description: |+
  The Samsung's Watchdog controller is used for resuming system operation
  after a preset amount of time during which the WDT reset event has not
  occurred.

properties:
  compatible:
    oneOf:
      - enum:
          - google,gs101-wdt                      # for Google gs101
          - samsung,s3c2410-wdt                   # for S3C2410
          - samsung,s3c6410-wdt                   # for S3C6410, S5PV210 and Exynos4
          - samsung,exynos5250-wdt                # for Exynos5250
          - samsung,exynos5420-wdt                # for Exynos5420
          - samsung,exynos7-wdt                   # for Exynos7
          - samsung,exynos850-wdt                 # for Exynos850
          - samsung,exynosautov9-wdt              # for Exynosautov9
      - items:
          - enum:
              - tesla,fsd-wdt
          - const: samsung,exynos7-wdt

  reg:
    maxItems: 1

  clocks:
    minItems: 1
    maxItems: 2

  clock-names:
    minItems: 1
    maxItems: 2

  interrupts:
    maxItems: 1

  samsung,cluster-index:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      Index of CPU cluster on which watchdog is running (in case of Exynos850
      or Google gs101).

  samsung,syscon-phandle:
    $ref: /schemas/types.yaml#/definitions/phandle
    description:
      Phandle to the PMU system controller node (in case of Exynos5250,
      Exynos5420, Exynos7, Exynos850 and gs101).

required:
  - compatible
  - clocks
  - clock-names
  - interrupts
  - reg

allOf:
  - $ref: watchdog.yaml#
  - if:
      properties:
        compatible:
          contains:
            enum:
              - google,gs101-wdt
              - samsung,exynos5250-wdt
              - samsung,exynos5420-wdt
              - samsung,exynos7-wdt
              - samsung,exynos850-wdt
              - samsung,exynosautov9-wdt
    then:
      required:
        - samsung,syscon-phandle
  - if:
      properties:
        compatible:
          contains:
            enum:
              - google,gs101-wdt
              - samsung,exynos850-wdt
              - samsung,exynosautov9-wdt
    then:
      properties:
        clocks:
          items:
            - description: Bus clock, used for register interface
            - description: Source clock (driving watchdog counter)
        clock-names:
          items:
            - const: watchdog
            - const: watchdog_src
        samsung,cluster-index:
          enum: [0, 1]
      required:
        - samsung,cluster-index
    else:
      properties:
        clocks:
          items:
            - description: Bus clock, which is also a source clock
        clock-names:
          items:
            - const: watchdog
        samsung,cluster-index: false

unevaluatedProperties: false

examples:
  - |
    watchdog@101d0000 {
        compatible = "samsung,exynos5250-wdt";
        reg = <0x101D0000 0x100>;
        interrupts = <0 42 0>;
        clocks = <&clock 336>;
        clock-names = "watchdog";
        samsung,syscon-phandle = <&pmu_syscon>;
    };
