/* 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_current: modem_current { qcom,qmi-dev-name = "modem_current"; #cooling-cells = <2>; }; modem_vdd: modem_vdd { qcom,qmi-dev-name = "cpuv_restriction_cold"; #cooling-cells = <2>; }; }; }; }; &thermal_zones { aoss0-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "user_space"; thermal-sensors = <&tsens0 0>; wake-capable-sensor; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; }; }; mdm-core-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "user_space"; thermal-sensors = <&tsens0 1>; wake-capable-sensor; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; }; }; lpass-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "user_space"; thermal-sensors = <&tsens0 2>; wake-capable-sensor; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; }; }; camera-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "user_space"; thermal-sensors = <&tsens0 3>; wake-capable-sensor; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; }; }; cpuss1-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens0 4>; thermal-governor = "user_space"; wake-capable-sensor; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; }; }; apc1-cpu0-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens0 5>; thermal-governor = "user_space"; wake-capable-sensor; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; }; }; apc1-cpu1-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens0 6>; thermal-governor = "user_space"; wake-capable-sensor; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; }; }; apc1-cpu2-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens0 7>; thermal-governor = "user_space"; wake-capable-sensor; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; }; }; apc1-cpu3-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens0 8>; thermal-governor = "user_space"; wake-capable-sensor; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; }; }; cpuss0-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens0 9>; thermal-governor = "user_space"; wake-capable-sensor; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; }; }; gpu-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens0 10>; thermal-governor = "user_space"; wake-capable-sensor; trips { active-config0 { temperature = <125000>; hysteresis = <1000>; type = "passive"; }; }; }; gpu-step { polling-delay-passive = <250>; polling-delay = <0>; thermal-sensors = <&tsens0 10>; thermal-governor = "step_wise"; wake-capable-sensor; trips { gpu_step_trip: gpu-step-trip { temperature = <95000>; hysteresis = <0>; type = "passive"; }; }; cooling-maps { gpu_cdev0 { trip = <&gpu_step_trip>; cooling-device = <&msm_gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; }; }; }; hexa-cpu-max-step { polling-delay-passive = <50>; polling-delay = <100>; thermal-governor = "step_wise"; wake-capable-sensor; trips { cpu_trip:cpu-trip { temperature = <85000>; hysteresis = <0>; type = "passive"; }; }; cooling-maps { cpu0_cdev { trip = <&cpu_trip>; cooling-device = <&CPU0 THERMAL_NO_LIMIT (THERMAL_MAX_LIMIT-1)>; }; cpu1_cdev { trip = <&cpu_trip>; cooling-device = <&CPU1 THERMAL_NO_LIMIT (THERMAL_MAX_LIMIT-1)>; }; cpu2_cdev { trip = <&cpu_trip>; cooling-device = <&CPU2 THERMAL_NO_LIMIT (THERMAL_MAX_LIMIT-1)>; }; cpu3_cdev { trip = <&cpu_trip>; cooling-device = <&CPU3 THERMAL_NO_LIMIT (THERMAL_MAX_LIMIT-1)>; }; }; }; apc1-cpu0-step { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens0 5>; thermal-governor = "step_wise"; wake-capable-sensor; trips { apc1_cpu0_trip: apc1-cpu0-trip { temperature = <105000>; hysteresis = <15000>; type = "passive"; }; }; cooling-maps { cpu0_cdev { trip = <&apc1_cpu0_trip>; cooling-device = <&CPU0 THERMAL_MAX_LIMIT THERMAL_MAX_LIMIT>; }; }; }; apc1-cpu1-step { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens0 6>; thermal-governor = "step_wise"; wake-capable-sensor; trips { apc1_cpu1_trip: apc1-cpu1-trip { temperature = <105000>; hysteresis = <15000>; type = "passive"; }; }; cooling-maps { cpu1_cdev { trip = <&apc1_cpu1_trip>; cooling-device = <&CPU1 THERMAL_MAX_LIMIT THERMAL_MAX_LIMIT>; }; }; }; apc1-cpu2-step { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens0 7>; thermal-governor = "step_wise"; wake-capable-sensor; trips { apc1_cpu2_trip: apc1-cpu2-trip { temperature = <105000>; hysteresis = <15000>; type = "passive"; }; }; cooling-maps { cpu2_cdev { trip = <&apc1_cpu2_trip>; cooling-device = <&CPU2 THERMAL_MAX_LIMIT THERMAL_MAX_LIMIT>; }; }; }; apc1-cpu3-step { polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&tsens0 8>; thermal-governor = "step_wise"; wake-capable-sensor; trips { apc1_cpu3_trip: apc1-cpu3-trip { temperature = <105000>; hysteresis = <15000>; type = "passive"; }; }; cooling-maps { cpu3_cdev { trip = <&apc1_cpu3_trip>; cooling-device = <&CPU3 THERMAL_MAX_LIMIT THERMAL_MAX_LIMIT>; }; }; }; aoss0-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens0 0>; wake-capable-sensor; tracks-low; trips { aoss0_trip: aoss-trip { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_vdd_cdev { trip = <&aoss0_trip>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-2) (THERMAL_MAX_LIMIT-2)>; }; cx_vdd_cdev { trip = <&aoss0_trip>; cooling-device = <&pm660_cx_cdev 0 0>; }; modem_vdd_cdev { trip = <&aoss0_trip>; cooling-device = <&modem_vdd 0 0>; }; }; }; mdm-core-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens0 1>; wake-capable-sensor; tracks-low; trips { mdm_core_trip: mdm-core-trip { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_vdd_cdev { trip = <&mdm_core_trip>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-2) (THERMAL_MAX_LIMIT-2)>; }; cx_vdd_cdev { trip = <&mdm_core_trip>; cooling-device = <&pm660_cx_cdev 0 0>; }; modem_vdd_cdev { trip = <&mdm_core_trip>; cooling-device = <&modem_vdd 0 0>; }; }; }; lpass-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens0 2>; wake-capable-sensor; tracks-low; trips { qdsp_trip: qdsp-trip { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_vdd_cdev { trip = <&qdsp_trip>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-2) (THERMAL_MAX_LIMIT-2)>; }; cx_vdd_cdev { trip = <&qdsp_trip>; cooling-device = <&pm660_cx_cdev 0 0>; }; modem_vdd_cdev { trip = <&qdsp_trip>; cooling-device = <&modem_vdd 0 0>; }; }; }; camera-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens0 3>; wake-capable-sensor; tracks-low; trips { camera_trip: camera-trip { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_vdd_cdev { trip = <&camera_trip>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-2) (THERMAL_MAX_LIMIT-2)>; }; cx_vdd_cdev { trip = <&camera_trip>; cooling-device = <&pm660_cx_cdev 0 0>; }; modem_vdd_cdev { trip = <&camera_trip>; cooling-device = <&modem_vdd 0 0>; }; }; }; cpuss1-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens0 4>; wake-capable-sensor; tracks-low; trips { cpuss1_trip: cpuss1-trip { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_vdd_cdev { trip = <&cpuss1_trip>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-2) (THERMAL_MAX_LIMIT-2)>; }; cx_vdd_cdev { trip = <&cpuss1_trip>; cooling-device = <&pm660_cx_cdev 0 0>; }; modem_vdd_cdev { trip = <&cpuss1_trip>; cooling-device = <&modem_vdd 0 0>; }; }; }; apc1-cpu0-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens0 5>; wake-capable-sensor; tracks-low; trips { cpu0_trip: apc1-cpu0-trip { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_vdd_cdev { trip = <&cpu0_trip>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-2) (THERMAL_MAX_LIMIT-2)>; }; cx_vdd_cdev { trip = <&cpu0_trip>; cooling-device = <&pm660_cx_cdev 0 0>; }; modem_vdd_cdev { trip = <&cpu0_trip>; cooling-device = <&modem_vdd 0 0>; }; }; }; apc1-cpu1-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens0 6>; wake-capable-sensor; tracks-low; trips { cpu1_trip: apc1-cpu1-trip { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_vdd_cdev { trip = <&cpu1_trip>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-2) (THERMAL_MAX_LIMIT-2)>; }; cx_vdd_cdev { trip = <&cpu1_trip>; cooling-device = <&pm660_cx_cdev 0 0>; }; modem_vdd_cdev { trip = <&cpu1_trip>; cooling-device = <&modem_vdd 0 0>; }; }; }; apc1-cpu2-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens0 7>; wake-capable-sensor; tracks-low; trips { cpu2_trip: apc1-cpu2-trip { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_vdd_cdev { trip = <&cpu2_trip>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-2) (THERMAL_MAX_LIMIT-2)>; }; cx_vdd_cdev { trip = <&cpu2_trip>; cooling-device = <&pm660_cx_cdev 0 0>; }; modem_vdd_cdev { trip = <&cpu2_trip>; cooling-device = <&modem_vdd 0 0>; }; }; }; apc1-cpu3-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens0 8>; wake-capable-sensor; tracks-low; trips { cpu3_trip: apc1-cpu3-trip { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_vdd_cdev { trip = <&cpu3_trip>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-2) (THERMAL_MAX_LIMIT-2)>; }; cx_vdd_cdev { trip = <&cpu3_trip>; cooling-device = <&pm660_cx_cdev 0 0>; }; modem_vdd_cdev { trip = <&cpu3_trip>; cooling-device = <&modem_vdd 0 0>; }; }; }; cpuss0-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens0 9>; wake-capable-sensor; tracks-low; trips { cpuss0_lowf_trip: cpuss0-lowf-trip { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_vdd_cdev { trip = <&cpuss0_lowf_trip>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-2) (THERMAL_MAX_LIMIT-2)>; }; cx_vdd_cdev { trip = <&cpuss0_lowf_trip>; cooling-device = <&pm660_cx_cdev 0 0>; }; modem_vdd_cdev { trip = <&cpuss0_lowf_trip>; cooling-device = <&modem_vdd 0 0>; }; }; }; gpu-lowf { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "low_limits_floor"; thermal-sensors = <&tsens0 10>; wake-capable-sensor; tracks-low; trips { gpu_lowf_trip: gpu-lowf-trip { temperature = <5000>; hysteresis = <5000>; type = "passive"; }; }; cooling-maps { cpu0_vdd_cdev { trip = <&gpu_lowf_trip>; cooling-device = <&CPU0 (THERMAL_MAX_LIMIT-2) (THERMAL_MAX_LIMIT-2)>; }; cx_vdd_cdev { trip = <&gpu_lowf_trip>; cooling-device = <&pm660_cx_cdev 0 0>; }; modem_vdd_cdev { trip = <&gpu_lowf_trip>; cooling-device = <&modem_vdd 0 0>; }; }; }; };