194c2004eSLaxman DewanganThermal driver for MAX77620 Power management IC from Maxim Semiconductor.
294c2004eSLaxman Dewangan
394c2004eSLaxman DewanganMaxim Semiconductor MAX77620 supports alarm interrupts when its
494c2004eSLaxman Dewangandie temperature crosses 120C and 140C. These threshold temperatures
594c2004eSLaxman Dewanganare not configurable. Device does not provide the real temperature
694c2004eSLaxman Dewanganof die other than just indicating whether temperature is above or
794c2004eSLaxman Dewanganbelow threshold level.
894c2004eSLaxman Dewangan
994c2004eSLaxman DewanganRequired properties:
1094c2004eSLaxman Dewangan-------------------
11cff1d293SAmit Kucheria#thermal-sensor-cells:	For more details, please refer to
12cff1d293SAmit Kucheria			<devicetree/bindings/thermal/thermal-sensor.yaml>
1394c2004eSLaxman Dewangan			The value must be 0.
1494c2004eSLaxman Dewangan
1594c2004eSLaxman DewanganFor more details, please refer generic thermal DT binding document
16cff1d293SAmit Kucheria<devicetree/bindings/thermal/thermal*.yaml>.
1794c2004eSLaxman Dewangan
1894c2004eSLaxman DewanganPlease refer <devicetree/bindings/mfd/max77620.txt> for mfd DT binding
1994c2004eSLaxman Dewangandocument for the MAX77620.
2094c2004eSLaxman Dewangan
2194c2004eSLaxman DewanganExample:
2294c2004eSLaxman Dewangan--------
2394c2004eSLaxman Dewangan#include <dt-bindings/mfd/max77620.h>
2494c2004eSLaxman Dewangan#include <dt-bindings/thermal/thermal.h>
2594c2004eSLaxman Dewangan...
2694c2004eSLaxman Dewangan
2794c2004eSLaxman Dewangani2c@7000d000 {
2894c2004eSLaxman Dewangan	spmic: max77620@3c {
2994c2004eSLaxman Dewangan		compatible = "maxim,max77620";
3094c2004eSLaxman Dewangan		:::::
3194c2004eSLaxman Dewangan		#thermal-sensor-cells = <0>;
3294c2004eSLaxman Dewangan		:::
3394c2004eSLaxman Dewangan	};
3494c2004eSLaxman Dewangan};
3594c2004eSLaxman Dewangan
3694c2004eSLaxman Dewangancool_dev: cool-dev {
3794c2004eSLaxman Dewangan	compatible = "cooling-dev";
3894c2004eSLaxman Dewangan	#cooling-cells = <2>;
3994c2004eSLaxman Dewangan};
4094c2004eSLaxman Dewangan
4194c2004eSLaxman Dewanganthermal-zones {
4294c2004eSLaxman Dewangan	PMIC-Die {
4394c2004eSLaxman Dewangan		polling-delay = <0>;
4494c2004eSLaxman Dewangan		polling-delay-passive = <0>;
4594c2004eSLaxman Dewangan		thermal-sensors = <&spmic>;
4694c2004eSLaxman Dewangan
4794c2004eSLaxman Dewangan		trips {
4894c2004eSLaxman Dewangan			pmic_die_warn_temp_thresh: hot-die {
4994c2004eSLaxman Dewangan				temperature = <120000>;
5094c2004eSLaxman Dewangan				type = "hot";
5194c2004eSLaxman Dewangan				hysteresis = <0>;
5294c2004eSLaxman Dewangan			};
5394c2004eSLaxman Dewangan
5494c2004eSLaxman Dewangan			pmic_die_cirt_temp_thresh: cirtical-die {
5594c2004eSLaxman Dewangan				temperature = <140000>;
5694c2004eSLaxman Dewangan				type = "critical";
5794c2004eSLaxman Dewangan				hysteresis = <0>;
5894c2004eSLaxman Dewangan			};
5994c2004eSLaxman Dewangan		};
6094c2004eSLaxman Dewangan
6194c2004eSLaxman Dewangan		cooling-maps {
6294c2004eSLaxman Dewangan			map0 {
6394c2004eSLaxman Dewangan				trip = <&pmic_die_warn_temp_thresh>;
6494c2004eSLaxman Dewangan				cooling-device = <&cool_dev THERMAL_NO_LIMIT
6594c2004eSLaxman Dewangan						  THERMAL_NO_LIMIT>;
6694c2004eSLaxman Dewangan				contribution = <100>;
6794c2004eSLaxman Dewangan			};
6894c2004eSLaxman Dewangan		};
6994c2004eSLaxman Dewangan	};
7094c2004eSLaxman Dewangan};
71