Commit 1aab6b81 authored by Dmitry Osipenko's avatar Dmitry Osipenko Committed by Daniel Lezcano
Browse files

dt-bindings: thermal: Add binding for Tegra30 thermal sensor



All NVIDIA Tegra30 SoCs have on-chip sensors which monitor temperature
and voltage of the SoC. Sensors also controls CPU x2 freq throttle and
emits emergency shutdown signal. TSENSOR has has two separate channels
for each sensor placed in a different parts of the SoC. Add binding for
the sensor hardware.

Reviewed-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarDmitry Osipenko <digetx@gmail.com>
Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20210616190417.32214-2-digetx@gmail.com
parent d8ac5bb4
Loading
Loading
Loading
Loading
+73 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/thermal/nvidia,tegra30-tsensor.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: NVIDIA Tegra30 Thermal Sensor

maintainers:
  - Dmitry Osipenko <digetx@gmail.com>
  - Jon Hunter <jonathanh@nvidia.com>
  - Thierry Reding <thierry.reding@gmail.com>

description: |
  TSENSOR provides thermal and voltage sensors which monitor temperature
  and voltage of the chip. Sensors are placed across the die to gauge the
  temperature of the whole chip. The TSENSOR module:

    Generates an interrupt to SW to lower temperature via DVFS on reaching
    a certain thermal/voltage threshold.

    Generates a signal to the CAR to reduce CPU frequency by half on reaching
    a certain thermal/voltage threshold.

    Generates a signal to the PMC when the temperature reaches dangerously high
    levels to reset the chip and sets a flag in the PMC.

  TSENSOR has two channels which monitor two different spots of the SoC.

properties:
  compatible:
    const: nvidia,tegra30-tsensor

  reg:
    maxItems: 1

  clocks:
    maxItems: 1

  resets:
    maxItems: 1

  interrupts:
    maxItems: 1

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

  assigned-clock-parents: true
  assigned-clock-rates: true
  assigned-clocks: true

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

additionalProperties: false

examples:
  - |
    thermal-sensor@70014000 {
      compatible = "nvidia,tegra30-tsensor";
      reg = <0x70014000 0x500>;
      interrupts = <0 102 4>;
      clocks = <&clk 100>;
      resets = <&rst 100>;

      #thermal-sensor-cells = <1>;
    };