xref: /openbmc/linux/Documentation/devicetree/bindings/thermal/brcm,sr-thermal.txt (revision 597473720f4dc69749542bfcfed4a927a43d935e)
1*b8bdf092SPramod Kumar* Broadcom Stingray Thermal
2*b8bdf092SPramod Kumar
3*b8bdf092SPramod KumarThis binding describes thermal sensors that is part of Stingray SoCs.
4*b8bdf092SPramod Kumar
5*b8bdf092SPramod KumarRequired properties:
6*b8bdf092SPramod Kumar- compatible : Must be "brcm,sr-thermal"
7*b8bdf092SPramod Kumar- reg : Memory where tmon data will be available.
8*b8bdf092SPramod Kumar- brcm,tmon-mask: A one cell bit mask of valid TMON sources.
9*b8bdf092SPramod Kumar                  Each bit represents single TMON source.
10*b8bdf092SPramod Kumar- #thermal-sensor-cells : Thermal sensor phandler
11*b8bdf092SPramod Kumar- polling-delay: Max number of milliseconds to wait between polls.
12*b8bdf092SPramod Kumar- thermal-sensors: A list of thermal sensor phandles and specifier.
13*b8bdf092SPramod Kumar                   specifier value is tmon ID and it should be
14*b8bdf092SPramod Kumar                   in correspond with brcm,tmon-mask.
15*b8bdf092SPramod Kumar- temperature: trip temperature threshold in millicelsius.
16*b8bdf092SPramod Kumar
17*b8bdf092SPramod KumarExample:
18*b8bdf092SPramod Kumar	tmons {
19*b8bdf092SPramod Kumar		compatible = "simple-bus";
20*b8bdf092SPramod Kumar		#address-cells = <1>;
21*b8bdf092SPramod Kumar		#size-cells = <1>;
22*b8bdf092SPramod Kumar		ranges = <0x0 0x0 0x8f100000 0x100>;
23*b8bdf092SPramod Kumar
24*b8bdf092SPramod Kumar		tmon: tmon@0 {
25*b8bdf092SPramod Kumar			compatible = "brcm,sr-thermal";
26*b8bdf092SPramod Kumar			reg = <0x0 0x40>;
27*b8bdf092SPramod Kumar			brcm,tmon-mask = <0x3f>;
28*b8bdf092SPramod Kumar			#thermal-sensor-cells = <1>;
29*b8bdf092SPramod Kumar		};
30*b8bdf092SPramod Kumar	};
31*b8bdf092SPramod Kumar
32*b8bdf092SPramod Kumar	thermal-zones {
33*b8bdf092SPramod Kumar		ihost0_thermal: ihost0-thermal {
34*b8bdf092SPramod Kumar			polling-delay-passive = <0>;
35*b8bdf092SPramod Kumar			polling-delay = <1000>;
36*b8bdf092SPramod Kumar			thermal-sensors = <&tmon 0>;
37*b8bdf092SPramod Kumar			trips {
38*b8bdf092SPramod Kumar				cpu-crit {
39*b8bdf092SPramod Kumar					temperature = <105000>;
40*b8bdf092SPramod Kumar					hysteresis = <0>;
41*b8bdf092SPramod Kumar					type = "critical";
42*b8bdf092SPramod Kumar				};
43*b8bdf092SPramod Kumar			};
44*b8bdf092SPramod Kumar		};
45*b8bdf092SPramod Kumar		ihost1_thermal: ihost1-thermal {
46*b8bdf092SPramod Kumar			polling-delay-passive = <0>;
47*b8bdf092SPramod Kumar			polling-delay = <1000>;
48*b8bdf092SPramod Kumar			thermal-sensors = <&tmon 1>;
49*b8bdf092SPramod Kumar			trips {
50*b8bdf092SPramod Kumar				cpu-crit {
51*b8bdf092SPramod Kumar					temperature = <105000>;
52*b8bdf092SPramod Kumar					hysteresis = <0>;
53*b8bdf092SPramod Kumar					type = "critical";
54*b8bdf092SPramod Kumar				};
55*b8bdf092SPramod Kumar			};
56*b8bdf092SPramod Kumar		};
57*b8bdf092SPramod Kumar		ihost2_thermal: ihost2-thermal {
58*b8bdf092SPramod Kumar			polling-delay-passive = <0>;
59*b8bdf092SPramod Kumar			polling-delay = <1000>;
60*b8bdf092SPramod Kumar			thermal-sensors = <&tmon 2>;
61*b8bdf092SPramod Kumar			trips {
62*b8bdf092SPramod Kumar				cpu-crit {
63*b8bdf092SPramod Kumar					temperature = <105000>;
64*b8bdf092SPramod Kumar					hysteresis = <0>;
65*b8bdf092SPramod Kumar					type = "critical";
66*b8bdf092SPramod Kumar				};
67*b8bdf092SPramod Kumar			};
68*b8bdf092SPramod Kumar		};
69*b8bdf092SPramod Kumar		ihost3_thermal: ihost3-thermal {
70*b8bdf092SPramod Kumar			polling-delay-passive = <0>;
71*b8bdf092SPramod Kumar			polling-delay = <1000>;
72*b8bdf092SPramod Kumar			thermal-sensors = <&tmon 3>;
73*b8bdf092SPramod Kumar			trips {
74*b8bdf092SPramod Kumar				cpu-crit {
75*b8bdf092SPramod Kumar					temperature = <105000>;
76*b8bdf092SPramod Kumar					hysteresis = <0>;
77*b8bdf092SPramod Kumar					type = "critical";
78*b8bdf092SPramod Kumar				};
79*b8bdf092SPramod Kumar			};
80*b8bdf092SPramod Kumar		};
81*b8bdf092SPramod Kumar		crmu_thermal: crmu-thermal {
82*b8bdf092SPramod Kumar			polling-delay-passive = <0>;
83*b8bdf092SPramod Kumar			polling-delay = <1000>;
84*b8bdf092SPramod Kumar			thermal-sensors = <&tmon 4>;
85*b8bdf092SPramod Kumar			trips {
86*b8bdf092SPramod Kumar				cpu-crit {
87*b8bdf092SPramod Kumar					temperature = <105000>;
88*b8bdf092SPramod Kumar					hysteresis = <0>;
89*b8bdf092SPramod Kumar					type = "critical";
90*b8bdf092SPramod Kumar				};
91*b8bdf092SPramod Kumar			};
92*b8bdf092SPramod Kumar		};
93*b8bdf092SPramod Kumar		nitro_thermal: nitro-thermal {
94*b8bdf092SPramod Kumar			polling-delay-passive = <0>;
95*b8bdf092SPramod Kumar			polling-delay = <1000>;
96*b8bdf092SPramod Kumar			thermal-sensors = <&tmon 5>;
97*b8bdf092SPramod Kumar			trips {
98*b8bdf092SPramod Kumar				cpu-crit {
99*b8bdf092SPramod Kumar					temperature = <105000>;
100*b8bdf092SPramod Kumar					hysteresis = <0>;
101*b8bdf092SPramod Kumar					type = "critical";
102*b8bdf092SPramod Kumar				};
103*b8bdf092SPramod Kumar			};
104*b8bdf092SPramod Kumar		};
105*b8bdf092SPramod Kumar	};
106