Kernel-4.18.0-80.el8_rcar-gen3-thermal

  • 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,-thermal”,
            Examples with soctypes are:
              - "renesas,r8a7795-thermal" (R-Car H3)
              - "renesas,r8a7796-thermal" (R-Car M3-W)
              - "renesas,r8a77965-thermal" (R-Car M3-N)
    
  • 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 (3 for H3, M3-W and M3-N)
  • 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";
            };
        };
    };
};