81306efd22
Add the "google,gs101-wdt" compatible to the dt-schema documentation. gs101 SoC has two CPU clusters and each cluster has its own dedicated watchdog timer (similar to exynos850 and exynosautov9 SoCs). These WDT instances are controlled using different bits in PMU registers. Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org> Signed-off-by: Peter Griffin <peter.griffin@linaro.org> Link: https://lore.kernel.org/r/20231211162331.435900-2-peter.griffin@linaro.org Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
127 lines
3.2 KiB
YAML
127 lines
3.2 KiB
YAML
# 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>;
|
|
};
|