xref: /linux/Documentation/devicetree/bindings/watchdog/samsung-wdt.yaml (revision 06d07429858317ded2db7986113a9e0129cd599b)
179df4a9bSKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0
279df4a9bSKrzysztof Kozlowski%YAML 1.2
379df4a9bSKrzysztof Kozlowski---
479df4a9bSKrzysztof Kozlowski$id: http://devicetree.org/schemas/watchdog/samsung-wdt.yaml#
579df4a9bSKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml#
679df4a9bSKrzysztof Kozlowski
779df4a9bSKrzysztof Kozlowskititle: Samsung SoC Watchdog Timer Controller
879df4a9bSKrzysztof Kozlowski
979df4a9bSKrzysztof Kozlowskimaintainers:
1079df4a9bSKrzysztof Kozlowski  - Krzysztof Kozlowski <krzk@kernel.org>
1179df4a9bSKrzysztof Kozlowski
1279df4a9bSKrzysztof Kozlowskidescription: |+
1379df4a9bSKrzysztof Kozlowski  The Samsung's Watchdog controller is used for resuming system operation
1479df4a9bSKrzysztof Kozlowski  after a preset amount of time during which the WDT reset event has not
1579df4a9bSKrzysztof Kozlowski  occurred.
1679df4a9bSKrzysztof Kozlowski
1779df4a9bSKrzysztof Kozlowskiproperties:
1879df4a9bSKrzysztof Kozlowski  compatible:
19bf1e24c5SKrzysztof Kozlowski    oneOf:
20bf1e24c5SKrzysztof Kozlowski      - enum:
21*81306efdSPeter Griffin          - google,gs101-wdt                      # for Google gs101
2279df4a9bSKrzysztof Kozlowski          - samsung,s3c2410-wdt                   # for S3C2410
2379df4a9bSKrzysztof Kozlowski          - samsung,s3c6410-wdt                   # for S3C6410, S5PV210 and Exynos4
2479df4a9bSKrzysztof Kozlowski          - samsung,exynos5250-wdt                # for Exynos5250
2579df4a9bSKrzysztof Kozlowski          - samsung,exynos5420-wdt                # for Exynos5420
2679df4a9bSKrzysztof Kozlowski          - samsung,exynos7-wdt                   # for Exynos7
270b595831SSam Protsenko          - samsung,exynos850-wdt                 # for Exynos850
28eadf8c4cSChanho Park          - samsung,exynosautov9-wdt              # for Exynosautov9
29bf1e24c5SKrzysztof Kozlowski      - items:
30bf1e24c5SKrzysztof Kozlowski          - enum:
31bf1e24c5SKrzysztof Kozlowski              - tesla,fsd-wdt
32bf1e24c5SKrzysztof Kozlowski          - const: samsung,exynos7-wdt
3379df4a9bSKrzysztof Kozlowski
3479df4a9bSKrzysztof Kozlowski  reg:
3579df4a9bSKrzysztof Kozlowski    maxItems: 1
3679df4a9bSKrzysztof Kozlowski
376fd64049SKrzysztof Kozlowski  clocks:
380b595831SSam Protsenko    minItems: 1
390b595831SSam Protsenko    maxItems: 2
406fd64049SKrzysztof Kozlowski
416fd64049SKrzysztof Kozlowski  clock-names:
420b595831SSam Protsenko    minItems: 1
430b595831SSam Protsenko    maxItems: 2
446fd64049SKrzysztof Kozlowski
4579df4a9bSKrzysztof Kozlowski  interrupts:
4679df4a9bSKrzysztof Kozlowski    maxItems: 1
4779df4a9bSKrzysztof Kozlowski
480b595831SSam Protsenko  samsung,cluster-index:
490b595831SSam Protsenko    $ref: /schemas/types.yaml#/definitions/uint32
500b595831SSam Protsenko    description:
51*81306efdSPeter Griffin      Index of CPU cluster on which watchdog is running (in case of Exynos850
52*81306efdSPeter Griffin      or Google gs101).
530b595831SSam Protsenko
5479df4a9bSKrzysztof Kozlowski  samsung,syscon-phandle:
5579df4a9bSKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/phandle
5679df4a9bSKrzysztof Kozlowski    description:
5733950f9aSSam Protsenko      Phandle to the PMU system controller node (in case of Exynos5250,
58*81306efdSPeter Griffin      Exynos5420, Exynos7, Exynos850 and gs101).
5979df4a9bSKrzysztof Kozlowski
6079df4a9bSKrzysztof Kozlowskirequired:
6179df4a9bSKrzysztof Kozlowski  - compatible
626fd64049SKrzysztof Kozlowski  - clocks
636fd64049SKrzysztof Kozlowski  - clock-names
6479df4a9bSKrzysztof Kozlowski  - interrupts
6579df4a9bSKrzysztof Kozlowski  - reg
6679df4a9bSKrzysztof Kozlowski
6779df4a9bSKrzysztof KozlowskiallOf:
6879df4a9bSKrzysztof Kozlowski  - $ref: watchdog.yaml#
6979df4a9bSKrzysztof Kozlowski  - if:
7079df4a9bSKrzysztof Kozlowski      properties:
7179df4a9bSKrzysztof Kozlowski        compatible:
7279df4a9bSKrzysztof Kozlowski          contains:
7379df4a9bSKrzysztof Kozlowski            enum:
74*81306efdSPeter Griffin              - google,gs101-wdt
7579df4a9bSKrzysztof Kozlowski              - samsung,exynos5250-wdt
7679df4a9bSKrzysztof Kozlowski              - samsung,exynos5420-wdt
7733950f9aSSam Protsenko              - samsung,exynos7-wdt
780b595831SSam Protsenko              - samsung,exynos850-wdt
79eadf8c4cSChanho Park              - samsung,exynosautov9-wdt
8079df4a9bSKrzysztof Kozlowski    then:
8179df4a9bSKrzysztof Kozlowski      required:
8279df4a9bSKrzysztof Kozlowski        - samsung,syscon-phandle
830b595831SSam Protsenko  - if:
840b595831SSam Protsenko      properties:
850b595831SSam Protsenko        compatible:
860b595831SSam Protsenko          contains:
870b595831SSam Protsenko            enum:
88*81306efdSPeter Griffin              - google,gs101-wdt
890b595831SSam Protsenko              - samsung,exynos850-wdt
90eadf8c4cSChanho Park              - samsung,exynosautov9-wdt
910b595831SSam Protsenko    then:
920b595831SSam Protsenko      properties:
930b595831SSam Protsenko        clocks:
940b595831SSam Protsenko          items:
950b595831SSam Protsenko            - description: Bus clock, used for register interface
960b595831SSam Protsenko            - description: Source clock (driving watchdog counter)
970b595831SSam Protsenko        clock-names:
980b595831SSam Protsenko          items:
990b595831SSam Protsenko            - const: watchdog
1000b595831SSam Protsenko            - const: watchdog_src
1010b595831SSam Protsenko        samsung,cluster-index:
1020b595831SSam Protsenko          enum: [0, 1]
1030b595831SSam Protsenko      required:
1040b595831SSam Protsenko        - samsung,cluster-index
1050b595831SSam Protsenko    else:
1060b595831SSam Protsenko      properties:
1070b595831SSam Protsenko        clocks:
1080b595831SSam Protsenko          items:
1090b595831SSam Protsenko            - description: Bus clock, which is also a source clock
1100b595831SSam Protsenko        clock-names:
1110b595831SSam Protsenko          items:
1120b595831SSam Protsenko            - const: watchdog
1130b595831SSam Protsenko        samsung,cluster-index: false
11479df4a9bSKrzysztof Kozlowski
1156fdc6e23SRob HerringunevaluatedProperties: false
1166fdc6e23SRob Herring
11779df4a9bSKrzysztof Kozlowskiexamples:
11879df4a9bSKrzysztof Kozlowski  - |
11979df4a9bSKrzysztof Kozlowski    watchdog@101d0000 {
12079df4a9bSKrzysztof Kozlowski        compatible = "samsung,exynos5250-wdt";
12179df4a9bSKrzysztof Kozlowski        reg = <0x101D0000 0x100>;
12279df4a9bSKrzysztof Kozlowski        interrupts = <0 42 0>;
12379df4a9bSKrzysztof Kozlowski        clocks = <&clock 336>;
12479df4a9bSKrzysztof Kozlowski        clock-names = "watchdog";
12579df4a9bSKrzysztof Kozlowski        samsung,syscon-phandle = <&pmu_syscon>;
12679df4a9bSKrzysztof Kozlowski    };
127