xref: /freebsd/sys/contrib/device-tree/Bindings/thermal/nvidia,tegra30-tsensor.yaml (revision d5b0e70f7e04d971691517ce1304d86a1e367e2e)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/thermal/nvidia,tegra30-tsensor.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: NVIDIA Tegra30 Thermal Sensor
8
9maintainers:
10  - Dmitry Osipenko <digetx@gmail.com>
11  - Jon Hunter <jonathanh@nvidia.com>
12  - Thierry Reding <thierry.reding@gmail.com>
13
14description: |
15  TSENSOR provides thermal and voltage sensors which monitor temperature
16  and voltage of the chip. Sensors are placed across the die to gauge the
17  temperature of the whole chip. The TSENSOR module:
18
19    Generates an interrupt to SW to lower temperature via DVFS on reaching
20    a certain thermal/voltage threshold.
21
22    Generates a signal to the CAR to reduce CPU frequency by half on reaching
23    a certain thermal/voltage threshold.
24
25    Generates a signal to the PMC when the temperature reaches dangerously high
26    levels to reset the chip and sets a flag in the PMC.
27
28  TSENSOR has two channels which monitor two different spots of the SoC.
29
30properties:
31  compatible:
32    const: nvidia,tegra30-tsensor
33
34  reg:
35    maxItems: 1
36
37  clocks:
38    maxItems: 1
39
40  resets:
41    maxItems: 1
42
43  interrupts:
44    maxItems: 1
45
46  "#thermal-sensor-cells":
47    const: 1
48
49  assigned-clock-parents: true
50  assigned-clock-rates: true
51  assigned-clocks: true
52
53required:
54  - compatible
55  - reg
56  - clocks
57  - resets
58  - interrupts
59  - "#thermal-sensor-cells"
60
61additionalProperties: false
62
63examples:
64  - |
65    thermal-sensor@70014000 {
66      compatible = "nvidia,tegra30-tsensor";
67      reg = <0x70014000 0x500>;
68      interrupts = <0 102 4>;
69      clocks = <&clk 100>;
70      resets = <&rst 100>;
71
72      #thermal-sensor-cells = <1>;
73    };
74