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