1031c2952SKeerthy# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2031c2952SKeerthy%YAML 1.2
3031c2952SKeerthy---
4031c2952SKeerthy$id: http://devicetree.org/schemas/thermal/ti,j72xx-thermal.yaml#
5031c2952SKeerthy$schema: http://devicetree.org/meta-schemas/core.yaml#
6031c2952SKeerthy
7*84e85359SKrzysztof Kozlowskititle: Texas Instruments J72XX VTM (DTS)
8031c2952SKeerthy
9031c2952SKeerthymaintainers:
10031c2952SKeerthy  - Keerthy <j-keerthy@ti.com>
11031c2952SKeerthy
12effe8db0SBryan Brattlofdescription: |
13effe8db0SBryan Brattlof  The TI K3 family of SoCs typically have a Voltage & Thermal
14effe8db0SBryan Brattlof  Management (VTM) device to control up to 8 temperature diode
15effe8db0SBryan Brattlof  sensors to measure silicon junction temperatures from different
16effe8db0SBryan Brattlof  hotspots of the chip as well as provide temperature, interrupt
17effe8db0SBryan Brattlof  and alerting information.
18effe8db0SBryan Brattlof
19effe8db0SBryan Brattlof  The following polynomial equation can then be used to convert
20effe8db0SBryan Brattlof  value returned by this device into a temperature in Celsius
21effe8db0SBryan Brattlof
22effe8db0SBryan Brattlof  Temp(C) = (-9.2627e-12) * x^4 + (6.0373e-08) * x^3 + \
23effe8db0SBryan Brattlof            (-1.7058e-04) * x^2 + (3.2512e-01) * x   + (-4.9003e+01)
24effe8db0SBryan Brattlof
25031c2952SKeerthyproperties:
26031c2952SKeerthy  compatible:
27031c2952SKeerthy    enum:
28031c2952SKeerthy      - ti,j721e-vtm
29031c2952SKeerthy      - ti,j7200-vtm
30031c2952SKeerthy
31031c2952SKeerthy  reg:
32031c2952SKeerthy    items:
33031c2952SKeerthy      - description: VTM cfg1 register space
34031c2952SKeerthy      - description: VTM cfg2 register space
35effe8db0SBryan Brattlof      - description: |
36effe8db0SBryan Brattlof          A software trimming method must be applied to some Jacinto
37effe8db0SBryan Brattlof          devices to function properly. This eFuse region provides
38effe8db0SBryan Brattlof          the information needed for these SoCs to report
39effe8db0SBryan Brattlof          temperatures accurately.
40c4026d3eSBryan Brattlof    minItems: 2
41031c2952SKeerthy
42031c2952SKeerthy  power-domains:
43031c2952SKeerthy    maxItems: 1
44031c2952SKeerthy
45031c2952SKeerthy  "#thermal-sensor-cells":
46031c2952SKeerthy    const: 1
47031c2952SKeerthy
48c4026d3eSBryan BrattlofallOf:
49c4026d3eSBryan Brattlof  - if:
50c4026d3eSBryan Brattlof      properties:
51c4026d3eSBryan Brattlof        compatible:
52c4026d3eSBryan Brattlof          contains:
53c4026d3eSBryan Brattlof            const: ti,j721e-vtm
54c4026d3eSBryan Brattlof    then:
55c4026d3eSBryan Brattlof      properties:
56c4026d3eSBryan Brattlof        reg:
57c4026d3eSBryan Brattlof          minItems: 3
58c4026d3eSBryan Brattlof    else:
59c4026d3eSBryan Brattlof      properties:
60c4026d3eSBryan Brattlof        reg:
61c4026d3eSBryan Brattlof          maxItems: 2
62c4026d3eSBryan Brattlof
63031c2952SKeerthyrequired:
64031c2952SKeerthy  - compatible
65031c2952SKeerthy  - reg
66031c2952SKeerthy  - power-domains
67031c2952SKeerthy  - "#thermal-sensor-cells"
68031c2952SKeerthy
69031c2952SKeerthyadditionalProperties: false
70031c2952SKeerthy
71031c2952SKeerthyexamples:
72031c2952SKeerthy  - |
73031c2952SKeerthy    #include <dt-bindings/soc/ti,sci_pm_domain.h>
74031c2952SKeerthy    wkup_vtm0: thermal-sensor@42040000 {
75031c2952SKeerthy        compatible = "ti,j721e-vtm";
76031c2952SKeerthy        reg = <0x42040000 0x350>,
77031c2952SKeerthy              <0x42050000 0x350>,
78031c2952SKeerthy              <0x43000300 0x10>;
79031c2952SKeerthy        power-domains = <&k3_pds 154 TI_SCI_PD_EXCLUSIVE>;
80031c2952SKeerthy        #thermal-sensor-cells = <1>;
81031c2952SKeerthy    };
82031c2952SKeerthy
83031c2952SKeerthy    mpu_thermal: mpu-thermal {
84031c2952SKeerthy        polling-delay-passive = <250>; /* milliseconds */
85031c2952SKeerthy        polling-delay = <500>; /* milliseconds */
86031c2952SKeerthy        thermal-sensors = <&wkup_vtm0 0>;
87031c2952SKeerthy
88031c2952SKeerthy        trips {
89031c2952SKeerthy            mpu_crit: mpu-crit {
90031c2952SKeerthy                temperature = <125000>; /* milliCelsius */
91031c2952SKeerthy                hysteresis = <2000>; /* milliCelsius */
92031c2952SKeerthy                type = "critical";
93031c2952SKeerthy            };
94031c2952SKeerthy        };
95031c2952SKeerthy    };
96031c2952SKeerthy...
97