Commit ed979c03 authored by Konrad Dybcio's avatar Konrad Dybcio Committed by Bjorn Andersson

arm64: dts: qcom: sm8550: Throttle the GPU when overheating

Add an 85C passive trip point to ensure the thermal framework takes
sufficient action to prevent reaching junction temperature and a
110C critical point to help avoid hw damage.

Remove the copypasta-from-downstream userspace governor entries while
at it.
Signed-off-by: default avatarKonrad Dybcio <konrad.dybcio@linaro.org>
Link: https://lore.kernel.org/r/20240510-topic-gpus_are_cool_now-v1-11-ababc269a438@linaro.orgSigned-off-by: default avatarBjorn Andersson <andersson@kernel.org>
parent 4be0dd44
...@@ -5386,34 +5386,28 @@ gpuss-0-thermal { ...@@ -5386,34 +5386,28 @@ gpuss-0-thermal {
cooling-maps { cooling-maps {
map0 { map0 {
trip = <&gpu0_junction_config>; trip = <&gpu0_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
}; };
}; };
trips { trips {
thermal-engine-config { gpu0_alert0: trip-point0 {
temperature = <125000>; temperature = <85000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "passive";
}; };
thermal-hal-config { trip-point1 {
temperature = <125000>; temperature = <90000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "hot";
};
reset-mon-config {
temperature = <115000>;
hysteresis = <5000>;
type = "passive";
}; };
gpu0_junction_config: junction-config { trip-point2 {
temperature = <95000>; temperature = <110000>;
hysteresis = <5000>; hysteresis = <1000>;
type = "passive"; type = "critical";
}; };
}; };
}; };
...@@ -5425,34 +5419,28 @@ gpuss-1-thermal { ...@@ -5425,34 +5419,28 @@ gpuss-1-thermal {
cooling-maps { cooling-maps {
map0 { map0 {
trip = <&gpu1_junction_config>; trip = <&gpu1_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
}; };
}; };
trips { trips {
thermal-engine-config { gpu1_alert0: trip-point0 {
temperature = <125000>; temperature = <85000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "passive";
}; };
thermal-hal-config { trip-point1 {
temperature = <125000>; temperature = <90000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "hot";
};
reset-mon-config {
temperature = <115000>;
hysteresis = <5000>;
type = "passive";
}; };
gpu1_junction_config: junction-config { trip-point2 {
temperature = <95000>; temperature = <110000>;
hysteresis = <5000>; hysteresis = <1000>;
type = "passive"; type = "critical";
}; };
}; };
}; };
...@@ -5464,34 +5452,28 @@ gpuss-2-thermal { ...@@ -5464,34 +5452,28 @@ gpuss-2-thermal {
cooling-maps { cooling-maps {
map0 { map0 {
trip = <&gpu2_junction_config>; trip = <&gpu2_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
}; };
}; };
trips { trips {
thermal-engine-config { gpu2_alert0: trip-point0 {
temperature = <125000>; temperature = <85000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "passive";
}; };
thermal-hal-config { trip-point1 {
temperature = <125000>; temperature = <90000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "hot";
};
reset-mon-config {
temperature = <115000>;
hysteresis = <5000>;
type = "passive";
}; };
gpu2_junction_config: junction-config { trip-point2 {
temperature = <95000>; temperature = <110000>;
hysteresis = <5000>; hysteresis = <1000>;
type = "passive"; type = "critical";
}; };
}; };
}; };
...@@ -5503,34 +5485,28 @@ gpuss-3-thermal { ...@@ -5503,34 +5485,28 @@ gpuss-3-thermal {
cooling-maps { cooling-maps {
map0 { map0 {
trip = <&gpu3_junction_config>; trip = <&gpu3_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
}; };
}; };
trips { trips {
thermal-engine-config { gpu3_alert0: trip-point0 {
temperature = <125000>; temperature = <85000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "passive";
}; };
thermal-hal-config { trip-point1 {
temperature = <125000>; temperature = <90000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "hot";
};
reset-mon-config {
temperature = <115000>;
hysteresis = <5000>;
type = "passive";
}; };
gpu3_junction_config: junction-config { trip-point2 {
temperature = <95000>; temperature = <110000>;
hysteresis = <5000>; hysteresis = <1000>;
type = "passive"; type = "critical";
}; };
}; };
}; };
...@@ -5542,34 +5518,28 @@ gpuss-4-thermal { ...@@ -5542,34 +5518,28 @@ gpuss-4-thermal {
cooling-maps { cooling-maps {
map0 { map0 {
trip = <&gpu4_junction_config>; trip = <&gpu4_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
}; };
}; };
trips { trips {
thermal-engine-config { gpu4_alert0: trip-point0 {
temperature = <125000>; temperature = <85000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "passive";
}; };
thermal-hal-config { trip-point1 {
temperature = <125000>; temperature = <90000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "hot";
};
reset-mon-config {
temperature = <115000>;
hysteresis = <5000>;
type = "passive";
}; };
gpu4_junction_config: junction-config { trip-point2 {
temperature = <95000>; temperature = <110000>;
hysteresis = <5000>; hysteresis = <1000>;
type = "passive"; type = "critical";
}; };
}; };
}; };
...@@ -5581,34 +5551,28 @@ gpuss-5-thermal { ...@@ -5581,34 +5551,28 @@ gpuss-5-thermal {
cooling-maps { cooling-maps {
map0 { map0 {
trip = <&gpu5_junction_config>; trip = <&gpu5_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
}; };
}; };
trips { trips {
thermal-engine-config { gpu5_alert0: trip-point0 {
temperature = <125000>; temperature = <85000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "passive";
}; };
thermal-hal-config { trip-point1 {
temperature = <125000>; temperature = <90000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "hot";
};
reset-mon-config {
temperature = <115000>;
hysteresis = <5000>;
type = "passive";
}; };
gpu5_junction_config: junction-config { trip-point2 {
temperature = <95000>; temperature = <110000>;
hysteresis = <5000>; hysteresis = <1000>;
type = "passive"; type = "critical";
}; };
}; };
}; };
...@@ -5620,34 +5584,28 @@ gpuss-6-thermal { ...@@ -5620,34 +5584,28 @@ gpuss-6-thermal {
cooling-maps { cooling-maps {
map0 { map0 {
trip = <&gpu6_junction_config>; trip = <&gpu6_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
}; };
}; };
trips { trips {
thermal-engine-config { gpu6_alert0: trip-point0 {
temperature = <125000>; temperature = <85000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "passive";
}; };
thermal-hal-config { trip-point1 {
temperature = <125000>; temperature = <90000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "hot";
};
reset-mon-config {
temperature = <115000>;
hysteresis = <5000>;
type = "passive";
}; };
gpu6_junction_config: junction-config { trip-point2 {
temperature = <95000>; temperature = <110000>;
hysteresis = <5000>; hysteresis = <1000>;
type = "passive"; type = "critical";
}; };
}; };
}; };
...@@ -5659,34 +5617,28 @@ gpuss-7-thermal { ...@@ -5659,34 +5617,28 @@ gpuss-7-thermal {
cooling-maps { cooling-maps {
map0 { map0 {
trip = <&gpu7_junction_config>; trip = <&gpu7_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
}; };
}; };
trips { trips {
thermal-engine-config { gpu7_alert0: trip-point0 {
temperature = <125000>; temperature = <85000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "passive";
}; };
thermal-hal-config { trip-point1 {
temperature = <125000>; temperature = <90000>;
hysteresis = <1000>; hysteresis = <1000>;
type = "passive"; type = "hot";
};
reset-mon-config {
temperature = <115000>;
hysteresis = <5000>;
type = "passive";
}; };
gpu7_junction_config: junction-config { trip-point2 {
temperature = <95000>; temperature = <110000>;
hysteresis = <5000>; hysteresis = <1000>;
type = "passive"; type = "critical";
}; };
}; };
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment