xref: /rk3399_rockchip-uboot/doc/device-tree-bindings/thermal/rockchip-thermal.txt (revision c9feb427aba860ebc79f9851a1bb49cc456a2d48)
1*344c8376SSimon Glass* Temperature Sensor ADC (TSADC) on rockchip SoCs
2*344c8376SSimon Glass
3*344c8376SSimon GlassRequired properties:
4*344c8376SSimon Glass- compatible : "rockchip,rk3288-tsadc"
5*344c8376SSimon Glass- reg : physical base address of the controller and length of memory mapped
6*344c8376SSimon Glass	region.
7*344c8376SSimon Glass- interrupts : The interrupt number to the cpu. The interrupt specifier format
8*344c8376SSimon Glass	       depends on the interrupt controller.
9*344c8376SSimon Glass- clocks : Must contain an entry for each entry in clock-names.
10*344c8376SSimon Glass- clock-names : Shall be "tsadc" for the converter-clock, and "apb_pclk" for
11*344c8376SSimon Glass		the peripheral clock.
12*344c8376SSimon Glass- resets : Must contain an entry for each entry in reset-names.
13*344c8376SSimon Glass	   See ../reset/reset.txt for details.
14*344c8376SSimon Glass- reset-names : Must include the name "tsadc-apb".
15*344c8376SSimon Glass- #thermal-sensor-cells : Should be 1. See ./thermal.txt for a description.
16*344c8376SSimon Glass- rockchip,hw-tshut-temp : The hardware-controlled shutdown temperature value.
17*344c8376SSimon Glass- rockchip,hw-tshut-mode : The hardware-controlled shutdown mode 0:CRU 1:GPIO.
18*344c8376SSimon Glass- rockchip,hw-tshut-polarity : The hardware-controlled active polarity 0:LOW
19*344c8376SSimon Glass			       1:HIGH.
20*344c8376SSimon Glass
21*344c8376SSimon GlassExiample:
22*344c8376SSimon Glasstsadc: tsadc@ff280000 {
23*344c8376SSimon Glass	compatible = "rockchip,rk3288-tsadc";
24*344c8376SSimon Glass	reg = <0xff280000 0x100>;
25*344c8376SSimon Glass	interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
26*344c8376SSimon Glass	clocks = <&cru SCLK_TSADC>, <&cru PCLK_TSADC>;
27*344c8376SSimon Glass	clock-names = "tsadc", "apb_pclk";
28*344c8376SSimon Glass	resets = <&cru SRST_TSADC>;
29*344c8376SSimon Glass	reset-names = "tsadc-apb";
30*344c8376SSimon Glass	pinctrl-names = "default";
31*344c8376SSimon Glass	pinctrl-0 = <&otp_out>;
32*344c8376SSimon Glass	#thermal-sensor-cells = <1>;
33*344c8376SSimon Glass	rockchip,hw-tshut-temp = <95000>;
34*344c8376SSimon Glass	rockchip,hw-tshut-mode = <0>;
35*344c8376SSimon Glass	rockchip,hw-tshut-polarity = <0>;
36*344c8376SSimon Glass};
37*344c8376SSimon Glass
38*344c8376SSimon GlassExample: referring to thermal sensors:
39*344c8376SSimon Glassthermal-zones {
40*344c8376SSimon Glass	cpu_thermal: cpu_thermal {
41*344c8376SSimon Glass		polling-delay-passive = <1000>; /* milliseconds */
42*344c8376SSimon Glass		polling-delay = <5000>; /* milliseconds */
43*344c8376SSimon Glass
44*344c8376SSimon Glass		/* sensor	ID */
45*344c8376SSimon Glass		thermal-sensors = <&tsadc	1>;
46*344c8376SSimon Glass
47*344c8376SSimon Glass		trips {
48*344c8376SSimon Glass			cpu_alert0: cpu_alert {
49*344c8376SSimon Glass				temperature = <70000>; /* millicelsius */
50*344c8376SSimon Glass				hysteresis = <2000>; /* millicelsius */
51*344c8376SSimon Glass				type = "passive";
52*344c8376SSimon Glass			};
53*344c8376SSimon Glass			cpu_crit: cpu_crit {
54*344c8376SSimon Glass				temperature = <90000>; /* millicelsius */
55*344c8376SSimon Glass				hysteresis = <2000>; /* millicelsius */
56*344c8376SSimon Glass				type = "critical";
57*344c8376SSimon Glass			};
58*344c8376SSimon Glass		};
59*344c8376SSimon Glass
60*344c8376SSimon Glass		cooling-maps {
61*344c8376SSimon Glass			map0 {
62*344c8376SSimon Glass				trip = <&cpu_alert0>;
63*344c8376SSimon Glass				cooling-device =
64*344c8376SSimon Glass				    <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
65*344c8376SSimon Glass			};
66*344c8376SSimon Glass		};
67*344c8376SSimon Glass	};
68*344c8376SSimon Glass};
69