linux-loongson/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-sysctrl.yaml
Kunihiko Hayashi 75c7aaa66f dt-bindings: soc: socionext: Add UniPhier system controller
Add devicetree binding schema for the system controller implemented on
Socionext Uniphier SoCs.

This system controller has multiple functions such as clock control,
reset control, internal watchdog timer, thermal management, and so on.

Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20221213082449.2721-10-hayashi.kunihiko@socionext.com
Signed-off-by: Rob Herring <robh@kernel.org>
2022-12-26 16:09:29 -06:00

105 lines
2.6 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/soc/socionext/socionext,uniphier-sysctrl.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Socionext UniPhier system controller
maintainers:
- Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
description: |+
System controller implemented on Socionext UniPhier SoCs has multiple
functions such as clock control, reset control, internal watchdog timer,
thermal management, and so on.
properties:
compatible:
items:
- enum:
- socionext,uniphier-ld4-sysctrl
- socionext,uniphier-pro4-sysctrl
- socionext,uniphier-pro5-sysctrl
- socionext,uniphier-pxs2-sysctrl
- socionext,uniphier-sld8-sysctrl
- socionext,uniphier-ld11-sysctrl
- socionext,uniphier-ld20-sysctrl
- socionext,uniphier-pxs3-sysctrl
- socionext,uniphier-nx1-sysctrl
- const: simple-mfd
- const: syscon
reg:
maxItems: 1
clock-controller:
$ref: /schemas/clock/socionext,uniphier-clock.yaml#
reset-controller:
$ref: /schemas/reset/socionext,uniphier-reset.yaml#
watchdog:
$ref: /schemas/watchdog/socionext,uniphier-wdt.yaml#
thermal-sensor:
$ref: /schemas/thermal/socionext,uniphier-thermal.yaml#
allOf:
- if:
properties:
compatible:
contains:
const: socionext,uniphier-ld4-sysctrl
then:
properties:
watchdog: false
- if:
properties:
compatible:
contains:
enum:
- socionext,uniphier-ld4-sysctrl
- socionext,uniphier-pro4-sysctrl
- socionext,uniphier-sld8-sysctrl
- socionext,uniphier-ld11-sysctrl
then:
properties:
thermal-sensor: false
additionalProperties: false
required:
- compatible
- reg
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
syscon@61840000 {
compatible = "socionext,uniphier-ld20-sysctrl",
"simple-mfd", "syscon";
reg = <0x61840000 0x4000>;
clock-controller {
compatible = "socionext,uniphier-ld20-clock";
#clock-cells = <1>;
};
reset-controller {
compatible = "socionext,uniphier-ld20-reset";
#reset-cells = <1>;
};
watchdog {
compatible = "socionext,uniphier-wdt";
};
thermal-sensor {
compatible = "socionext,uniphier-ld20-thermal";
interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
#thermal-sensor-cells = <0>;
};
};