ARM: dts: msm: Add CPU thermal configuration for lahaina

Add CPU frequency and CPU isolation cooling device configuration. Add
thermal emergency mitigation configuration to mitigate CPU at high
temperatures for lahaina.

Change-Id: I2a168b279d883d8ee4644d5e1c269c9d76a25937
This commit is contained in:
Ram Chandrasekar
2020-02-28 13:40:22 -08:00
parent 68e82f7766
commit 017c99cf51

View File

@@ -1,13 +1,57 @@
#include <dt-bindings/thermal/thermal_qti.h>
#include "lahaina-thermal-modem.dtsi"
&cpufreq_hw {
qcom,cpu-isolation {
compatible = "qcom,cpu-isolate";
cpu0_isolate: cpu0-isolate {
qcom,cpu = <&CPU0>;
#cooling-cells = <2>;
};
cpu1_isolate: cpu1-isolate {
qcom,cpu = <&CPU1>;
#cooling-cells = <2>;
};
cpu2_isolate: cpu2-isolate {
qcom,cpu = <&CPU2>;
#cooling-cells = <2>;
};
cpu3_isolate: cpu3-isolate {
qcom,cpu = <&CPU3>;
#cooling-cells = <2>;
};
cpu4_isolate: cpu4-isolate {
qcom,cpu = <&CPU4>;
#cooling-cells = <2>;
};
cpu5_isolate: cpu5-isolate {
qcom,cpu = <&CPU5>;
#cooling-cells = <2>;
};
cpu6_isolate: cpu6-isolate {
qcom,cpu = <&CPU6>;
#cooling-cells = <2>;
};
cpu7_isolate: cpu7-isolate {
qcom,cpu = <&CPU7>;
#cooling-cells = <2>;
};
};
};
&thermal_zones {
aoss-0-usr {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 0>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -28,7 +72,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 1>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -49,7 +92,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 2>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -70,7 +112,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 3>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -91,7 +132,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 4>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -112,7 +152,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 5>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -133,7 +172,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 6>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -154,7 +192,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 7>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -175,7 +212,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 8>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -196,7 +232,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 9>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -217,7 +252,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 10>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -238,7 +272,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 11>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -259,7 +292,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 12>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -280,7 +312,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 13>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -301,7 +332,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens0 14>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -322,7 +352,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 0>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -343,7 +372,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 1>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -364,7 +392,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 2>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -385,7 +412,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 3>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -406,7 +432,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 4>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -427,7 +452,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 5>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -448,7 +472,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 6>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -469,7 +492,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 7>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -490,7 +512,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 8>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -511,7 +532,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 9>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -532,7 +552,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 10>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -553,7 +572,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 11>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -574,7 +592,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 12>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -595,7 +612,6 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&tsens1 13>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -610,5 +626,323 @@
};
};
};
pop-mem-step {
polling-delay-passive = <10>;
polling-delay = <0>;
thermal-sensors = <&tsens1 7>;
thermal-governor = "step_wise";
trips {
pop_trip: pop-trip {
temperature = <95000>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
pop_cdev4 {
trip = <&pop_trip>;
cooling-device =
<&CPU4 THERMAL_NO_LIMIT
THERMAL_NO_LIMIT>;
};
pop_cdev7 {
trip = <&pop_trip>;
cooling-device =
<&CPU7 THERMAL_NO_LIMIT
THERMAL_NO_LIMIT>;
};
};
};
cpu-0-0-step {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-governor = "step_wise";
thermal-sensors = <&tsens0 1>;
trips {
cpu00_config: cpu00-config {
temperature = <110000>;
hysteresis = <10000>;
type = "passive";
};
};
cooling-maps {
cpu00_cdev {
trip = <&cpu00_config>;
cooling-device = <&cpu0_isolate 1 1>;
};
};
};
cpu-0-1-step {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-governor = "step_wise";
thermal-sensors = <&tsens0 2>;
trips {
cpu01_config: cpu01-config {
temperature = <110000>;
hysteresis = <10000>;
type = "passive";
};
};
cooling-maps {
cpu01_cdev {
trip = <&cpu01_config>;
cooling-device = <&cpu1_isolate 1 1>;
};
};
};
cpu-0-2-step {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-governor = "step_wise";
thermal-sensors = <&tsens0 3>;
trips {
cpu02_config: cpu02-config {
temperature = <110000>;
hysteresis = <10000>;
type = "passive";
};
};
cooling-maps {
cpu02_cdev {
trip = <&cpu02_config>;
cooling-device = <&cpu2_isolate 1 1>;
};
};
};
cpu-0-3-step {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&tsens0 4>;
thermal-governor = "step_wise";
trips {
cpu03_config: cpu03-config {
temperature = <110000>;
hysteresis = <10000>;
type = "passive";
};
};
cooling-maps {
cpu03_cdev {
trip = <&cpu03_config>;
cooling-device = <&cpu3_isolate 1 1>;
};
};
};
cpu-1-0-step {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&tsens0 7>;
thermal-governor = "step_wise";
trips {
cpu10_config: cpu10-config {
temperature = <110000>;
hysteresis = <10000>;
type = "passive";
};
};
cooling-maps {
cpu10_cdev {
trip = <&cpu10_config>;
cooling-device = <&cpu4_isolate 1 1>;
};
cpu10_cdev1 {
trip = <&cpu10_config>;
cooling-device = <&CPU4 THERMAL_MAX_LIMIT
THERMAL_MAX_LIMIT>;
};
};
};
cpu-1-1-step {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&tsens0 8>;
thermal-governor = "step_wise";
trips {
cpu11_config: cpu11-config {
temperature = <110000>;
hysteresis = <10000>;
type = "passive";
};
};
cooling-maps {
cpu11_cdev {
trip = <&cpu11_config>;
cooling-device = <&cpu4_isolate 1 1>;
};
cpu11_cdev1 {
trip = <&cpu11_config>;
cooling-device = <&CPU4 THERMAL_MAX_LIMIT
THERMAL_MAX_LIMIT>;
};
};
};
cpu-1-2-step {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&tsens0 9>;
thermal-governor = "step_wise";
trips {
cpu12_config: cpu12-config {
temperature = <110000>;
hysteresis = <10000>;
type = "passive";
};
};
cooling-maps {
cpu12_cdev {
trip = <&cpu12_config>;
cooling-device = <&cpu5_isolate 1 1>;
};
cpu12_cdev1 {
trip = <&cpu12_config>;
cooling-device = <&CPU4 THERMAL_MAX_LIMIT
THERMAL_MAX_LIMIT>;
};
};
};
cpu-1-3-step {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&tsens0 10>;
thermal-governor = "step_wise";
trips {
cpu13_config: cpu13-config {
temperature = <110000>;
hysteresis = <10000>;
type = "passive";
};
};
cooling-maps {
cpu13_cdev {
trip = <&cpu13_config>;
cooling-device = <&cpu5_isolate 1 1>;
};
cpu13_cdev1 {
trip = <&cpu13_config>;
cooling-device = <&CPU4 THERMAL_MAX_LIMIT
THERMAL_MAX_LIMIT>;
};
};
};
cpu-1-4-step {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&tsens0 11>;
thermal-governor = "step_wise";
trips {
cpu14_config: cpu14-config {
temperature = <110000>;
hysteresis = <10000>;
type = "passive";
};
};
cooling-maps {
cpu14_cdev {
trip = <&cpu14_config>;
cooling-device = <&cpu6_isolate 1 1>;
};
cpu14_cdev1 {
trip = <&cpu14_config>;
cooling-device = <&CPU4 THERMAL_MAX_LIMIT
THERMAL_MAX_LIMIT>;
};
};
};
cpu-1-5-step {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&tsens0 12>;
thermal-governor = "step_wise";
trips {
cpu15_config: cpu15-config {
temperature = <110000>;
hysteresis = <10000>;
type = "passive";
};
};
cooling-maps {
cpu15_cdev {
trip = <&cpu15_config>;
cooling-device = <&cpu6_isolate 1 1>;
};
cpu15_cdev1 {
trip = <&cpu15_config>;
cooling-device = <&CPU4 THERMAL_MAX_LIMIT
THERMAL_MAX_LIMIT>;
};
};
};
cpu-1-6-step {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&tsens0 13>;
thermal-governor = "step_wise";
trips {
cpu16_config: cpu16-config {
temperature = <110000>;
hysteresis = <10000>;
type = "passive";
};
};
cooling-maps {
cpu16_cdev {
trip = <&cpu16_config>;
cooling-device = <&cpu7_isolate 1 1>;
};
};
};
cpu-1-7-step {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&tsens0 14>;
thermal-governor = "step_wise";
trips {
cpu17_config: cpu17-config {
temperature = <110000>;
hysteresis = <10000>;
type = "passive";
};
};
cooling-maps {
cpu17_cdev {
trip = <&cpu17_config>;
cooling-device = <&cpu7_isolate 1 1>;
};
};
};
};