Commit 37d1e946 authored by Niklas Söderlund's avatar Niklas Söderlund Committed by Rob Herring
Browse files

dt-bindings: thermal: rcar-gen3-thermal: Convert bindings to json-schema



Convert Renesas R-Car Gen3 Thermal bindings documentation to
json-schema.

Signed-off-by: default avatarNiklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: default avatarRob Herring <robh@kernel.org>
parent 2cb80529
Loading
Loading
Loading
Loading
+0 −60
Original line number Diff line number Diff line
* DT bindings for Renesas R-Car Gen3 Thermal Sensor driver

On R-Car Gen3 SoCs, the thermal sensor controllers (TSC) control the thermal
sensors (THS) which are the analog circuits for measuring temperature (Tj)
inside the LSI.

Required properties:
- compatible		: "renesas,<soctype>-thermal",
			  Examples with soctypes are:
			    - "renesas,r8a774a1-thermal" (RZ/G2M)
			    - "renesas,r8a774b1-thermal" (RZ/G2N)
			    - "renesas,r8a7795-thermal" (R-Car H3)
			    - "renesas,r8a7796-thermal" (R-Car M3-W)
			    - "renesas,r8a77961-thermal" (R-Car M3-W+)
			    - "renesas,r8a77965-thermal" (R-Car M3-N)
			    - "renesas,r8a77980-thermal" (R-Car V3H)
- reg			: Address ranges of the thermal registers. Each sensor
			  needs one address range. Sorting must be done in
			  increasing order according to datasheet, i.e.
			  TSC1, TSC2, ...
- clocks		: Must contain a reference to the functional clock.
- #thermal-sensor-cells : must be <1>.

Optional properties:

- interrupts		: interrupts routed to the TSC (must be 3).
- power-domain		: Must contain a reference to the power domain. This
			  property is mandatory if the thermal sensor instance
			  is part of a controllable power domain.

Example:

	tsc: thermal@e6198000 {
		compatible = "renesas,r8a7795-thermal";
		reg = <0 0xe6198000 0 0x100>,
		      <0 0xe61a0000 0 0x100>,
		      <0 0xe61a8000 0 0x100>;
		interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
		clocks = <&cpg CPG_MOD 522>;
		power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
		#thermal-sensor-cells = <1>;
	};

	thermal-zones {
		sensor_thermal1: sensor-thermal1 {
			polling-delay-passive = <250>;
			polling-delay = <1000>;
			thermal-sensors = <&tsc 0>;

			trips {
				sensor1_crit: sensor1-crit {
					temperature = <90000>;
					hysteresis = <2000>;
					type = "critical";
				};
			};
		};
	};
+99 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only
# Copyright (C) 2020 Renesas Electronics Corp.
%YAML 1.2
---
$id: http://devicetree.org/schemas/thermal/rcar-gen3-thermal.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Renesas R-Car Gen3 Thermal Sensor

description:
  On R-Car Gen3 SoCs, the thermal sensor controllers (TSC) control the thermal
  sensors (THS) which are the analog circuits for measuring temperature (Tj)
  inside the LSI.

maintainers:
  - Niklas Söderlund <niklas.soderlund@ragnatech.se>

properties:
  compatible:
    enum:
      - renesas,r8a774a1-thermal # RZ/G2M
      - renesas,r8a774b1-thermal # RZ/G2N
      - renesas,r8a7795-thermal  # R-Car H3
      - renesas,r8a7796-thermal  # R-Car M3-W
      - renesas,r8a77961-thermal # R-Car M3-W+
      - renesas,r8a77965-thermal # R-Car M3-N
      - renesas,r8a77980-thermal # R-Car V3H
  reg:
    minItems: 2
    maxItems: 3
    items:
      - description: TSC1 registers
      - description: TSC2 registers
      - description: TSC3 registers

  interrupts:
    items:
      - description: TEMP1 interrupt
      - description: TEMP2 interrupt
      - description: TEMP3 interrupt

  clocks:
    maxItems: 1

  power-domains:
    maxItems: 1

  resets:
    maxItems: 1

  "#thermal-sensor-cells":
    const: 1

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - power-domains
  - resets
  - "#thermal-sensor-cells"

additionalProperties: false

examples:
  - |
    #include <dt-bindings/clock/r8a7795-cpg-mssr.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/power/r8a7795-sysc.h>

    tsc: thermal@e6198000 {
            compatible = "renesas,r8a7795-thermal";
            reg = <0xe6198000 0x100>,
                  <0xe61a0000 0x100>,
                  <0xe61a8000 0x100>;
            interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>,
                         <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>,
                         <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
            clocks = <&cpg CPG_MOD 522>;
            power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
            resets = <&cpg 522>;
            #thermal-sensor-cells = <1>;
    };

    thermal-zones {
            sensor_thermal: sensor-thermal {
                    polling-delay-passive = <250>;
                    polling-delay = <1000>;
                    thermal-sensors = <&tsc 0>;

                    trips {
                            sensor1_crit: sensor1-crit {
                                    temperature = <90000>;
                                    hysteresis = <2000>;
                                    type = "critical";
                            };
                    };
            };
    };