mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-02 08:32:55 +00:00

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>
105 lines
2.6 KiB
YAML
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>;
|
|
};
|
|
};
|