/* *Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #include &soc { qmi-tmd-devices { compatible = "qcom,qmi-cooling-devices"; modem { qcom,instance-id = <0x0>; modem_pa: modem_pa { qcom,qmi-dev-name = "pa"; #cooling-cells = <2>; }; modem_proc: modem_proc { qcom,qmi-dev-name = "modem"; #cooling-cells = <2>; }; modem_vdd: modem_vdd { qcom,qmi-dev-name = "cpuv_restriction_cold"; #cooling-cells = <2>; }; modem_cx: modem_cx { qcom,qmi-dev-name = "cx_vdd_limit"; #cooling-cells = <2>; }; }; }; }; &thermal_zones { nav-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "user_space"; thermal-sensors = <&tsens 0>; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; reset-mon-cfg { temperature = <115000>; hysteresis = <5000>; type = "passive"; }; }; }; wddac-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "user_space"; thermal-sensors = <&tsens 1>; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; reset-mon-cfg { temperature = <115000>; hysteresis = <5000>; type = "passive"; }; }; }; modem-dsp-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "user_space"; thermal-sensors = <&tsens 2>; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; reset-mon-cfg { temperature = <115000>; hysteresis = <5000>; type = "passive"; }; }; }; ipss-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "user_space"; thermal-sensors = <&tsens 3>; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; reset-mon-cfg { temperature = <115000>; hysteresis = <5000>; type = "passive"; }; }; }; cpuss-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens 4>; thermal-governor = "user_space"; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; reset-mon-cfg { temperature = <115000>; hysteresis = <5000>; type = "passive"; }; }; }; cpuss-step { polling-delay-passive = <65>; polling-delay = <0>; thermal-sensors = <&tsens 4>; thermal-governor = "step_wise"; wake-capable-sensor; trips { cpu_trip:cpu-trip { temperature = <95000>; hysteresis = <0>; type = "passive"; }; }; cooling-maps { cpu0_cdev { trip = <&cpu_trip>; cooling-device = <&CPU0 THERMAL_NO_LIMIT (THERMAL_MAX_LIMIT-1)>; }; }; }; modem-dsp-step { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens 2>; thermal-governor = "step_wise"; wake-capable-sensor; trips { modem_pa_trip0: modem_pa_trip0 { temperature = <95000>; hysteresis = <5000>; type = "passive"; }; modem_pa_trip1: modem_pa_trip1 { temperature = <100000>; hysteresis = <5000>; type = "passive"; }; modem_cx_trip0: modem-cx-trip0 { temperature = <110000>; hysteresis = <5000>; type = "passive"; }; modem_cx_trip1: modem-cx-trip1 { temperature = <112000>; hysteresis = <2000>; type = "passive"; }; modem_cx_trip2: modem-cx-trip2 { temperature = <115000>; hysteresis = <3000>; type = "passive"; }; }; cooling-maps { modem_pa0_cdev { trip = <&modem_pa_trip0>; cooling-device = <&modem_pa 1 1>; }; modem_pa1_cdev { trip = <&modem_pa_trip1>; cooling-device = <&modem_pa 2 2>; }; modem_cx0_cdev { trip = <&modem_cx_trip0>; cooling-device = <&modem_cx 0 0>; }; modem_cx1_cdev { trip = <&modem_cx_trip1>; cooling-device = <&modem_cx 1 1>; }; modem_cx2_cdev { trip = <&modem_cx_trip2>; cooling-device = <&modem_cx 2 2>; }; }; }; nav-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens 0>; wake-capable-sensor; trips { nav_lowf: nav-lowf { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_cdev { trip = <&nav_lowf>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-3) (THERMAL_MAX_LIMIT-3)>; }; cx_vdd_cdev { trip = <&nav_lowf>; cooling-device = <&cx_cdev 0 0>; }; mx_vdd_cdev { trip = <&nav_lowf>; cooling-device = <&mx_cdev 0 0>; }; modem_vdd_cdev { trip = <&nav_lowf>; cooling-device = <&modem_vdd 0 0>; }; }; }; wddac-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens 1>; wake-capable-sensor; trips { wddac_lowf: wddac-lowf { temperature = <5000>; hysteresis = <5000>; type ="passive"; }; }; cooling-maps { cpu0_cdev { trip = <&wddac_lowf>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-3) (THERMAL_MAX_LIMIT-3)>; }; cx_vdd_cdev { trip = <&wddac_lowf>; cooling-device = <&cx_cdev 0 0>; }; mx_vdd_cdev { trip = <&wddac_lowf>; cooling-device = <&mx_cdev 0 0>; }; modem_vdd_cdev { trip = <&wddac_lowf>; cooling-device = <&modem_vdd 0 0>; }; }; }; modem-dsp-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens 2>; wake-capable-sensor; trips { modem_dsp_lowf: modem-dsp-lowf { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_cdev { trip = <&modem_dsp_lowf>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-3) (THERMAL_MAX_LIMIT-3)>; }; cx_vdd_cdev { trip = <&modem_dsp_lowf>; cooling-device = <&cx_cdev 0 0>; }; mx_vdd_cdev { trip = <&modem_dsp_lowf>; cooling-device = <&mx_cdev 0 0>; }; modem_vdd_cdev { trip = <&modem_dsp_lowf>; cooling-device = <&modem_vdd 0 0>; }; }; }; ipss-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens 3>; wake-capable-sensor; trips { ipss_lowf: ipss-lowf { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_cdev { trip = <&ipss_lowf>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-3) (THERMAL_MAX_LIMIT-3)>; }; cx_vdd_cdev { trip = <&ipss_lowf>; cooling-device = <&cx_cdev 0 0>; }; mx_vdd_cdev { trip = <&ipss_lowf>; cooling-device = <&mx_cdev 0 0>; }; modem_vdd_cdev { trip = <&ipss_lowf>; cooling-device = <&modem_vdd 0 0>; }; }; }; cpuss-lowf { polling-delay-passive = <65>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens 4>; wake-capable-sensor; trips { cpuss_lowf: cpuss-lowf { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_cdev { trip = <&cpuss_lowf>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-3) (THERMAL_MAX_LIMIT-3)>; }; cx_vdd_cdev { trip = <&cpuss_lowf>; cooling-device = <&cx_cdev 0 0>; }; mx_vdd_cdev { trip = <&cpuss_lowf>; cooling-device = <&mx_cdev 0 0>; }; modem_vdd_cdev { trip = <&cpuss_lowf>; cooling-device = <&modem_vdd 0 0>; }; }; }; };