summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorqctecmdr <qctecmdr@localhost>2021-03-29 23:33:54 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2021-03-29 23:33:54 -0700
commit03efe83e13ef0870640d3ad78fa7854cc462c35b (patch)
treee9044810626819bc68ef767177209a451d7305b0
parente68dab78cbaa4f391aeb9324e96241d751672e05 (diff)
parent28cab8566d8c68fc4ef393fcf319a76105353e2f (diff)
downloaddevicetree-03efe83e13ef0870640d3ad78fa7854cc462c35b.tar.gz
Merge "ARM: dts: msm: enable thermal efuse driver for qrb5165"
-rw-r--r--bindings/thermal/qcom-thermal-efprom.txt73
-rw-r--r--qcom/kona.dtsi15
-rw-r--r--qcom/qrb5165.dtsi758
3 files changed, 841 insertions, 5 deletions
diff --git a/bindings/thermal/qcom-thermal-efprom.txt b/bindings/thermal/qcom-thermal-efprom.txt
new file mode 100644
index 00000000..d9e50103
--- /dev/null
+++ b/bindings/thermal/qcom-thermal-efprom.txt
@@ -0,0 +1,73 @@
+Modify Thermal Zone based on efuse data
+
+This driver is to enable/disable pre-configured thermal
+zones selectively at runtime based on efuse data. It uses QFPROM
+nvmem cell interface to read efuse data. It supports multiple
+efuse condition. If any of the efuse condition fails, driver just
+exits with default enabled thermal zones.
+
+Properties:
+
+- compatible:
+ Usage: Required
+ Value type: <string>
+ Definition: shall be "qcom,thermal-qfprom-device".
+
+- nvmem-cells:
+ Usage: Required
+ Value type: <array of phandle>
+ Definition: Array of phandles pointing to a nvmem-cells node
+ representing the efuse registers that has information that
+ is used to select the right thermal zone to enable.
+ Please refer nvmem-cells bindings
+ Documentation/devicetree/bindings/nvmem/nvmem.txt and also
+ example below.
+
+ nvmem-cell-names:
+ Usage: Required
+ Value type: <array of string>
+ Definition: Should be array of name for each nvmem-cells phandle data.
+ Please refer nvmem-cells bindings
+ Documentation/devicetree/bindings/nvmem/nvmem.txt and also
+ example below.
+
+- qcom,thermal-qfprom-bit-values: It should be array of bit mask values to
+ match with each nvmem-cells bit value respectively. If all
+ nvmem-cells values are matching with respective bit mask value
+ from this property, then driver will update thermal zones as
+ per thermal zones mentioned in 'qcom,thermal-zone-enable-list'
+ and 'qcom,thermal-zone-disable-list'.
+
+- qcom,thermal-zone-enable-list:
+ Usage: Required
+ Value type: <array of strings>
+ Definition: Should define this property with list of thermal zone
+ names those need to be enabled if nvmem-cells condition is met.
+
+- qcom,thermal-zone-disable-list:
+ Usage: Required
+ Value type: <array of strings>
+ Definition: Should define this property with list of thermal zone
+ names those need to be disabled if nvmem-cells condition is met.
+
+Example:
+ qcom-thermal-qfprom {
+ compatible = "qcom,thermal-qfprom-device";
+ nvmem-cells = <&thermal_cpe>, <&thermal_revision>;
+ nvmem-cell-names = "cpe", "revision";
+ qcom,thermal-qfprom-bit-values = <0x1 0x3>
+ qcom,thermal-zone-enable-list = "mdm-core-0-cpe-step",
+ "mdm-core-1-cpe-step";
+ qcom,thermal-zone-disable-list = "mdm-core-0-step",
+ "mdm-core-1-step";
+ };
+
+ In this example, driver gets efuse bit values of nvmem-cell register
+ for both 'cpe' and 'revision' nvmem cells. It then compares these efuse
+ values with property 'qcom,thermal-qfprom-bit-values' values (0x1 and
+ 0x3 here) respectively. If both efuse values are matching with this
+ property values, driver enables thermal zones listed in property
+ 'qcom,thermal-zone-enable-list' and disables thermal zones listed in
+ property 'qcom,thermal-zone-disable-list'. If any of the efuse
+ value is not matching with respective 'qcom,thermal-qfprom-bit-values'
+ values, driver just exits without modifying any thermal zone.
diff --git a/qcom/kona.dtsi b/qcom/kona.dtsi
index d235a559..82baa6b2 100644
--- a/qcom/kona.dtsi
+++ b/qcom/kona.dtsi
@@ -4966,20 +4966,25 @@
qfprom: qfprom@780000 {
compatible = "qcom,qfprom";
- reg = <0x00784000 0x3000>;
+ reg = <0x00780000 0x5000>;
#address-cells = <1>;
#size-cells = <1>;
read-only;
ranges;
- gpu_lm_efuse: gpu_lm_efuse@5c8 {
- reg = <0x5c8 0x4>;
+ gpu_lm_efuse: gpu_lm_efuse@45c8 {
+ reg = <0x45c8 0x4>;
};
- gpu_speed_bin: gpu_speed_bin@19b {
- reg = <0x19b 0x1>;
+ gpu_speed_bin: gpu_speed_bin@419b {
+ reg = <0x419b 0x1>;
bits = <5 3>;
};
+
+ thermal_speed_bin: thermal-speed-bin@1a2 {
+ reg = <0x1a2 0x1>;
+ bits = <7 1>;
+ };
};
};
diff --git a/qcom/qrb5165.dtsi b/qcom/qrb5165.dtsi
index 3cfa38c0..e2089e05 100644
--- a/qcom/qrb5165.dtsi
+++ b/qcom/qrb5165.dtsi
@@ -8,3 +8,761 @@
};
#include "kona-v2.1-gpu.dtsi"
+
+&soc {
+ qcom-thermal-qfprom {
+ compatible = "qcom,thermal-qfprom-device";
+ nvmem-cells = <&thermal_speed_bin>;
+ nvmem-cell-names = "thermal_speed_bin";
+ qcom,thermal-qfprom-bit-values = <0x1>;
+ qcom,thermal-zone-enable-list = "gpuss-max-iot-step",
+ "cpu-0-0-iot-step",
+ "cpu-0-1-iot-step",
+ "cpu-0-2-iot-step",
+ "cpu-0-3-iot-step",
+ "cpu-1-0-iot-step",
+ "cpu-1-1-iot-step",
+ "cpu-1-2-iot-step",
+ "cpu-1-3-iot-step",
+ "cpu-1-4-iot-step",
+ "cpu-1-5-iot-step",
+ "cpu-1-6-iot-step",
+ "cpu-1-7-iot-step",
+ "cwlan-iot-step",
+ "video-iot-step",
+ "ddr-iot-step",
+ "q6-hvx-iot-step",
+ "camera-iot-step",
+ "cmpss-iot-step",
+ "npu-iot-step";
+ qcom,thermal-zone-disable-list = "gpuss-max-step",
+ "cpu-0-0-step",
+ "cpu-0-1-step",
+ "cpu-0-2-step",
+ "cpu-0-3-step",
+ "cpu-1-0-step",
+ "cpu-1-1-step",
+ "cpu-1-2-step",
+ "cpu-1-3-step",
+ "cpu-1-4-step",
+ "cpu-1-5-step",
+ "cpu-1-6-step",
+ "cpu-1-7-step",
+ "cwlan-step",
+ "video-step",
+ "ddr-step",
+ "q6-hvx-step",
+ "camera-step",
+ "cmpss-step",
+ "npu-step";
+ };
+};
+
+&thermal_zones {
+ gpuss-max-iot-step {
+ polling-delay-passive = <10>;
+ polling-delay = <100>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+
+ trips {
+ gpu_iot_trip0: gpu-trip0 {
+ temperature = <110000>;
+ hysteresis = <0>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ gpu_cdev {
+ trip = <&gpu_iot_trip0>;
+ cooling-device = <&msm_gpu THERMAL_NO_LIMIT
+ THERMAL_NO_LIMIT>;
+ };
+ };
+ };
+
+ pop-mem-step {
+ status = "disabled";
+ };
+
+ cpu-0-0-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "step_wise";
+ thermal-sensors = <&tsens0 1>;
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cpu00_iot_config: cpu00-config {
+ temperature = <122000>;
+ hysteresis = <10000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cpu00_cdev {
+ trip = <&cpu00_iot_config>;
+ cooling-device = <&cpu0_isolate 1 1>;
+ };
+ };
+ };
+
+ cpu-0-1-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "step_wise";
+ thermal-sensors = <&tsens0 2>;
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cpu01_iot_config: cpu01-config {
+ temperature = <122000>;
+ hysteresis = <10000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cpu01_cdev {
+ trip = <&cpu01_iot_config>;
+ cooling-device = <&cpu1_isolate 1 1>;
+ };
+ };
+ };
+
+ cpu-0-2-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "step_wise";
+ thermal-sensors = <&tsens0 3>;
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cpu02_iot_config: cpu02-config {
+ temperature = <122000>;
+ hysteresis = <10000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cpu02_cdev {
+ trip = <&cpu02_iot_config>;
+ cooling-device = <&cpu2_isolate 1 1>;
+ };
+ };
+ };
+
+ cpu-0-3-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 4>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cpu03_iot_config: cpu03-config {
+ temperature = <122000>;
+ hysteresis = <10000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cpu03_cdev {
+ trip = <&cpu03_iot_config>;
+ cooling-device = <&cpu3_isolate 1 1>;
+ };
+ };
+ };
+
+ cpu-1-0-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 7>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cpufreq_10_iot_config: cpufreq-10-config {
+ temperature = <75000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ cpu10_iot_config: cpu10-config {
+ temperature = <122000>;
+ hysteresis = <10000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cpufreq_cdev {
+ trip = <&cpufreq_10_iot_config>;
+ cooling-device = <&cpu7_notify 1 1>;
+ };
+
+ cpu10_cdev {
+ trip = <&cpu10_iot_config>;
+ cooling-device = <&cpu4_isolate 1 1>;
+ };
+ };
+ };
+
+ cpu-1-1-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 8>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cpufreq_11_iot_config: cpufreq-11-config {
+ temperature = <75000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ cpu11_iot_config: cpu11-config {
+ temperature = <122000>;
+ hysteresis = <10000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cpufreq_cdev {
+ trip = <&cpufreq_11_iot_config>;
+ cooling-device = <&cpu7_notify 1 1>;
+ };
+
+ cpu11_cdev {
+ trip = <&cpu11_iot_config>;
+ cooling-device = <&cpu5_isolate 1 1>;
+ };
+ };
+ };
+
+ cpu-1-2-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 9>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cpufreq_12_iot_config: cpufreq-12-config {
+ temperature = <75000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ cpu12_iot_config: cpu12-config {
+ temperature = <122000>;
+ hysteresis = <10000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cpufreq_cdev {
+ trip = <&cpufreq_12_iot_config>;
+ cooling-device = <&cpu7_notify 1 1>;
+ };
+
+ cpu12_cdev {
+ trip = <&cpu12_iot_config>;
+ cooling-device = <&cpu6_isolate 1 1>;
+ };
+ };
+ };
+
+ cpu-1-3-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 10>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cpufreq_13_iot_config: cpufreq-13-config {
+ temperature = <75000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ cpu13_iot_config: cpu13-config {
+ temperature = <122000>;
+ hysteresis = <10000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cpufreq_cdev {
+ trip = <&cpufreq_13_iot_config>;
+ cooling-device = <&cpu7_notify 1 1>;
+ };
+
+ cpu13_cdev {
+ trip = <&cpu13_iot_config>;
+ cooling-device = <&cpu7_isolate 1 1>;
+ };
+ };
+ };
+
+ cpu-1-4-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 11>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cpufreq_14_iot_config: cpufreq-14-config {
+ temperature = <75000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ cpu14_iot_config: cpu14-config {
+ temperature = <122000>;
+ hysteresis = <10000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cpufreq_cdev {
+ trip = <&cpufreq_14_iot_config>;
+ cooling-device = <&cpu7_notify 1 1>;
+ };
+
+ cpu14_cdev {
+ trip = <&cpu14_iot_config>;
+ cooling-device = <&cpu4_isolate 1 1>;
+ };
+ };
+ };
+
+ cpu-1-5-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 12>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cpufreq_15_iot_config: cpufreq-15-config {
+ temperature = <75000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ cpu15_iot_config: cpu15-config {
+ temperature = <122000>;
+ hysteresis = <10000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cpufreq_cdev {
+ trip = <&cpufreq_15_iot_config>;
+ cooling-device = <&cpu7_notify 1 1>;
+ };
+
+ cpu15_cdev {
+ trip = <&cpu15_iot_config>;
+ cooling-device = <&cpu5_isolate 1 1>;
+ };
+ };
+ };
+
+ cpu-1-6-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 13>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cpufreq_16_iot_config: cpufreq-16-config {
+ temperature = <75000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ cpu16_iot_config: cpu16-config {
+ temperature = <122000>;
+ hysteresis = <10000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cpufreq_cdev {
+ trip = <&cpufreq_16_iot_config>;
+ cooling-device = <&cpu7_notify 1 1>;
+ };
+
+ cpu16_cdev {
+ trip = <&cpu16_iot_config>;
+ cooling-device = <&cpu6_isolate 1 1>;
+ };
+ };
+ };
+
+ cpu-1-7-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 14>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cpufreq_17_iot_config: cpufreq-17-config {
+ temperature = <75000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ cpu17_iot_config: cpu17-config {
+ temperature = <122000>;
+ hysteresis = <10000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cpufreq_cdev {
+ trip = <&cpufreq_17_iot_config>;
+ cooling-device = <&cpu7_notify 1 1>;
+ };
+
+ cpu17_cdev {
+ trip = <&cpu17_iot_config>;
+ cooling-device = <&cpu7_isolate 1 1>;
+ };
+ };
+ };
+
+ cwlan-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens1 1>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cwlan_iot_trip0: cwlan-trip0 {
+ temperature = <120000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cdsp-cdev {
+ trip = <&cwlan_iot_trip0>;
+ cooling-device = <&msm_cdsp_rm 3 3>;
+ };
+
+ gpu-cdev {
+ trip = <&cwlan_iot_trip0>;
+ cooling-device = <&msm_gpu (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ modem-pa-cdev {
+ trip = <&cwlan_iot_trip0>;
+ cooling-device = <&modem_pa 3 3>;
+ };
+
+ modem-tj-cdev {
+ trip = <&cwlan_iot_trip0>;
+ cooling-device = <&modem_tj 3 3>;
+ };
+
+ npu_cdev {
+ trip = <&cwlan_iot_trip0>;
+ cooling-device = <&msm_npu (THERMAL_MAX_LIMIT-3)
+ (THERMAL_MAX_LIMIT-3)>;
+ };
+ };
+ };
+
+ video-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens1 2>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ video_iot_trip0: video-trip0 {
+ temperature = <120000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cdsp-cdev {
+ trip = <&video_iot_trip0>;
+ cooling-device = <&msm_cdsp_rm 3 3>;
+ };
+
+ gpu-cdev {
+ trip = <&video_iot_trip0>;
+ cooling-device = <&msm_gpu (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ modem-pa-cdev {
+ trip = <&video_iot_trip0>;
+ cooling-device = <&modem_pa 3 3>;
+ };
+
+ modem-tj-cdev {
+ trip = <&video_iot_trip0>;
+ cooling-device = <&modem_tj 3 3>;
+ };
+
+ npu_cdev {
+ trip = <&video_iot_trip0>;
+ cooling-device = <&msm_npu (THERMAL_MAX_LIMIT-3)
+ (THERMAL_MAX_LIMIT-3)>;
+ };
+ };
+ };
+
+ ddr-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens1 3>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ ddr_iot_trip0: ddr-trip0 {
+ temperature = <120000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cdsp-cdev {
+ trip = <&ddr_iot_trip0>;
+ cooling-device = <&msm_cdsp_rm 3 3>;
+ };
+
+ gpu-cdev {
+ trip = <&ddr_iot_trip0>;
+ cooling-device = <&msm_gpu (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ modem-pa-cdev {
+ trip = <&ddr_iot_trip0>;
+ cooling-device = <&modem_pa 3 3>;
+ };
+
+ modem-tj-cdev {
+ trip = <&ddr_iot_trip0>;
+ cooling-device = <&modem_tj 3 3>;
+ };
+
+ npu_cdev {
+ trip = <&ddr_iot_trip0>;
+ cooling-device = <&msm_npu (THERMAL_MAX_LIMIT-3)
+ (THERMAL_MAX_LIMIT-3)>;
+ };
+ };
+ };
+
+ q6-hvx-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens1 4>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ q6_hvx_iot_trip0: q6-hvx-trip0 {
+ temperature = <120000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cdsp-cdev {
+ trip = <&q6_hvx_iot_trip0>;
+ cooling-device = <&msm_cdsp_rm 3 3>;
+ };
+
+ gpu-cdev {
+ trip = <&q6_hvx_iot_trip0>;
+ cooling-device = <&msm_gpu (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ modem-pa-cdev {
+ trip = <&q6_hvx_iot_trip0>;
+ cooling-device = <&modem_pa 3 3>;
+ };
+
+ modem-tj-cdev {
+ trip = <&q6_hvx_iot_trip0>;
+ cooling-device = <&modem_tj 3 3>;
+ };
+
+ npu_cdev {
+ trip = <&q6_hvx_iot_trip0>;
+ cooling-device = <&msm_npu (THERMAL_MAX_LIMIT-3)
+ (THERMAL_MAX_LIMIT-3)>;
+ };
+ };
+ };
+
+ camera-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens1 5>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ camera_iot_trip0: camera-trip0 {
+ temperature = <120000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cdsp-cdev {
+ trip = <&camera_iot_trip0>;
+ cooling-device = <&msm_cdsp_rm 3 3>;
+ };
+
+ gpu-cdev {
+ trip = <&camera_iot_trip0>;
+ cooling-device = <&msm_gpu (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ modem-pa-cdev {
+ trip = <&camera_iot_trip0>;
+ cooling-device = <&modem_pa 3 3>;
+ };
+
+ modem-tj-cdev {
+ trip = <&camera_iot_trip0>;
+ cooling-device = <&modem_tj 3 3>;
+ };
+
+ npu_cdev {
+ trip = <&camera_iot_trip0>;
+ cooling-device = <&msm_npu (THERMAL_MAX_LIMIT-3)
+ (THERMAL_MAX_LIMIT-3)>;
+ };
+ };
+ };
+
+ cmpss-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens1 6>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ cmpss_iot_trip0: cmpss-trip0 {
+ temperature = <120000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cdsp-cdev {
+ trip = <&cmpss_iot_trip0>;
+ cooling-device = <&msm_cdsp_rm 3 3>;
+ };
+
+ gpu-cdev {
+ trip = <&cmpss_iot_trip0>;
+ cooling-device = <&msm_gpu (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ modem-pa-cdev {
+ trip = <&cmpss_iot_trip0>;
+ cooling-device = <&modem_pa 3 3>;
+ };
+
+ modem-tj-cdev {
+ trip = <&cmpss_iot_trip0>;
+ cooling-device = <&modem_tj 3 3>;
+ };
+
+ npu_cdev {
+ trip = <&cmpss_iot_trip0>;
+ cooling-device = <&msm_npu (THERMAL_MAX_LIMIT-3)
+ (THERMAL_MAX_LIMIT-3)>;
+ };
+ };
+ };
+
+ npu-iot-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens1 7>;
+ thermal-governor = "step_wise";
+ wake-capable-sensor;
+ disable-thermal-zone;
+ trips {
+ npu_iot_trip0: npu-trip0 {
+ temperature = <120000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ cdsp-cdev {
+ trip = <&npu_iot_trip0>;
+ cooling-device = <&msm_cdsp_rm 3 3>;
+ };
+
+ gpu-cdev {
+ trip = <&npu_iot_trip0>;
+ cooling-device = <&msm_gpu (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ modem-pa-cdev {
+ trip = <&npu_iot_trip0>;
+ cooling-device = <&modem_pa 3 3>;
+ };
+
+ modem-tj-cdev {
+ trip = <&npu_iot_trip0>;
+ cooling-device = <&modem_tj 3 3>;
+ };
+
+ npu_cdev {
+ trip = <&npu_iot_trip0>;
+ cooling-device = <&msm_npu (THERMAL_MAX_LIMIT-3)
+ (THERMAL_MAX_LIMIT-3)>;
+ };
+ };
+ };
+};