diff --git a/arch/arm64/boot/dts/mediatek/mt8186.dtsi b/arch/arm64/boot/dts/mediatek/mt8186.dtsi
index b91f88ffae..bfea811491 100644
--- a/arch/arm64/boot/dts/mediatek/mt8186.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8186.dtsi
@@ -2229,22 +2229,23 @@ cpu-little0-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <150>;
 			thermal-sensors = <&lvts MT8186_LITTLE_CPU0>;
+			sustainable-power = <1500>;
 
 			trips {
-				cpu_little0_alert0: trip-alert0 {
-					temperature = <85000>;
+				cpu_little0_pa_switch_on: trip_pa_switch_on {
+					temperature = <58000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
-				cpu_little0_alert1: trip-alert1 {
-					temperature = <95000>;
+				cpu_little0_alert0: trip-alert {
+					temperature = <82000>;
 					hysteresis = <2000>;
-					type = "hot";
+					type = "passive";
 				};
 
 				cpu_little0_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <103000>;
 					hysteresis = <0>;
 					type = "critical";
 				};
@@ -2267,22 +2268,23 @@ cpu-little1-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <150>;
 			thermal-sensors = <&lvts MT8186_LITTLE_CPU1>;
+			sustainable-power = <1500>;
 
 			trips {
-				cpu_little1_alert0: trip-alert0 {
-					temperature = <85000>;
+				cpu_little1_pa_switch_on: trip_pa_switch_on {
+					temperature = <58000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
-				cpu_little1_alert1: trip-alert1 {
-					temperature = <95000>;
+				cpu_little1_alert0: trip-alert {
+					temperature = <82000>;
 					hysteresis = <2000>;
-					type = "hot";
+					type = "passive";
 				};
 
 				cpu_little1_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <103000>;
 					hysteresis = <0>;
 					type = "critical";
 				};
@@ -2305,22 +2307,23 @@ cpu-little2-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <150>;
 			thermal-sensors = <&lvts MT8186_LITTLE_CPU2>;
+			sustainable-power = <1500>;
 
 			trips {
-				cpu_little2_alert0: trip-alert0 {
-					temperature = <85000>;
+				cpu_little2_pa_switch_on: trip_pa_switch_on {
+					temperature = <58000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
-				cpu_little2_alert1: trip-alert1 {
-					temperature = <95000>;
+				cpu_little2_alert0: trip-alert {
+					temperature = <82000>;
 					hysteresis = <2000>;
-					type = "hot";
+					type = "passive";
 				};
 
 				cpu_little2_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <103000>;
 					hysteresis = <0>;
 					type = "critical";
 				};
@@ -2454,22 +2457,23 @@ cpu-big0-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <100>;
 			thermal-sensors = <&lvts MT8186_BIG_CPU0>;
+			sustainable-power = <1500>;
 
 			trips {
-				cpu_big0_alert0: trip-alert0 {
-					temperature = <85000>;
+				cpu_big0_pa_switch_on: trip_pa_switch_on {
+					temperature = <58000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
-				cpu_big0_alert1: trip-alert1 {
-					temperature = <95000>;
+				cpu_big0_alert0: trip-alert {
+					temperature = <82000>;
 					hysteresis = <2000>;
-					type = "hot";
+					type = "passive";
 				};
 
 				cpu_big0_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <103000>;
 					hysteresis = <0>;
 					type = "critical";
 				};
@@ -2488,22 +2492,23 @@ cpu-big1-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <100>;
 			thermal-sensors = <&lvts MT8186_BIG_CPU1>;
+			sustainable-power = <1500>;
 
 			trips {
-				cpu_big1_alert0: trip-alert0 {
-					temperature = <85000>;
+				cpu_big1_pa_switch_on: trip_pa_switch_on {
+					temperature = <58000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
-				cpu_big1_alert1: trip-alert1 {
-					temperature = <95000>;
+				cpu_big1_alert0: trip-alert {
+					temperature = <82000>;
 					hysteresis = <2000>;
-					type = "hot";
+					type = "passive";
 				};
 
 				cpu_big1_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <103000>;
 					hysteresis = <0>;
 					type = "critical";
 				};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188.dtsi b/arch/arm64/boot/dts/mediatek/mt8188.dtsi
index 69a8423d38..c2ac47c77c 100644
--- a/arch/arm64/boot/dts/mediatek/mt8188.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8188.dtsi
@@ -472,22 +472,23 @@ cpu-little0-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <150>;
 			thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU0>;
+			sustainable-power = <1500>;
 
 			trips {
-				cpu_little0_alert0: trip-alert0 {
-					temperature = <85000>;
+				cpu_little0_pa_switch_on: trip-pa-switch_on {
+					temperature = <68000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
-				cpu_little0_alert1: trip-alert1 {
-					temperature = <95000>;
+				cpu_little0_alert0: trip-alert {
+					temperature = <85000>;
 					hysteresis = <2000>;
-					type = "hot";
+					type = "passive";
 				};
 
 				cpu_little0_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <0>;
 					type = "critical";
 				};
@@ -510,22 +511,23 @@ cpu-little1-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <150>;
 			thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU1>;
+			sustainable-power = <1500>;
 
 			trips {
-				cpu_little1_alert0: trip-alert0 {
-					temperature = <85000>;
+				cpu_little1_pa_switch_on: trip-pa-switch_on {
+					temperature = <68000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
-				cpu_little1_alert1: trip-alert1 {
-					temperature = <95000>;
+				cpu_little1_alert0: trip-alert {
+					temperature = <85000>;
 					hysteresis = <2000>;
-					type = "hot";
+					type = "passive";
 				};
 
 				cpu_little1_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <0>;
 					type = "critical";
 				};
@@ -548,22 +550,23 @@ cpu-little2-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <150>;
 			thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU2>;
+			sustainable-power = <1500>;
 
 			trips {
-				cpu_little2_alert0: trip-alert0 {
-					temperature = <85000>;
+				cpu_little2_pa_switch_on: trip-pa-switch_on {
+					temperature = <68000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
-				cpu_little2_alert1: trip-alert1 {
-					temperature = <95000>;
+				cpu_little2_alert0: trip-alert {
+					temperature = <85000>;
 					hysteresis = <2000>;
-					type = "hot";
+					type = "passive";
 				};
 
 				cpu_little2_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <0>;
 					type = "critical";
 				};
@@ -586,22 +589,23 @@ cpu-little3-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <150>;
 			thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU3>;
+			sustainable-power = <1500>;
 
 			trips {
-				cpu_little3_alert0: trip-alert0 {
-					temperature = <85000>;
+				cpu_little3_pa_switch_on: trip-pa-switch_on {
+					temperature = <68000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
-				cpu_little3_alert1: trip-alert1 {
-					temperature = <95000>;
+				cpu_little3_alert0: trip-alert {
+					temperature = <85000>;
 					hysteresis = <2000>;
-					type = "hot";
+					type = "passive";
 				};
 
 				cpu_little3_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <0>;
 					type = "critical";
 				};
@@ -624,22 +628,23 @@ cpu-big0-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <100>;
 			thermal-sensors = <&lvts_mcu MT8188_MCU_BIG_CPU0>;
+			sustainable-power = <1500>;
 
 			trips {
-				cpu_big0_alert0: trip-alert0 {
-					temperature = <85000>;
+				cpu_big0_pa_switch_on: trip-pa-switch_on {
+					temperature = <68000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
-				cpu_big0_alert1: trip-alert1 {
-					temperature = <95000>;
+				cpu_big0_alert0: trip-alert {
+					temperature = <85000>;
 					hysteresis = <2000>;
-					type = "hot";
+					type = "passive";
 				};
 
 				cpu_big0_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <0>;
 					type = "critical";
 				};
@@ -658,22 +663,23 @@ cpu-big1-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <100>;
 			thermal-sensors = <&lvts_mcu MT8188_MCU_BIG_CPU1>;
+			sustainable-power = <1500>;
 
 			trips {
-				cpu_big1_alert0: trip-alert0 {
-					temperature = <85000>;
+				cpu_big1_pa_switch_on: trip-pa-switch_on {
+					temperature = <68000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
-				cpu_big1_alert1: trip-alert1 {
-					temperature = <95000>;
+				cpu_big1_alert0: trip-alert {
+					temperature = <85000>;
 					hysteresis = <2000>;
-					type = "hot";
+					type = "passive";
 				};
 
 				cpu_big1_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <0>;
 					type = "critical";
 				};
diff --git a/arch/arm64/boot/dts/mediatek/mt8195.dtsi b/arch/arm64/boot/dts/mediatek/mt8195.dtsi
index 4f2dc0a755..06631760c2 100644
--- a/arch/arm64/boot/dts/mediatek/mt8195.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8195.dtsi
@@ -3729,16 +3729,23 @@ cpu0-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <250>;
 			thermal-sensors = <&lvts_mcu MT8195_MCU_LITTLE_CPU0>;
+			sustainable-power = <1500>;
 
 			trips {
+				cpu0_pa_switch_on: trip_pa_switch_on {
+						temperature = <68000>;
+						hysteresis = <2000>;
+						type = "passive";
+				};
+
 				cpu0_alert: trip-alert {
-					temperature = <85000>;
+					temperature = <90000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
 				cpu0_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <2000>;
 					type = "critical";
 				};
@@ -3759,16 +3766,23 @@ cpu1-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <250>;
 			thermal-sensors = <&lvts_mcu MT8195_MCU_LITTLE_CPU1>;
+			sustainable-power = <1500>;
 
 			trips {
+				cpu1_pa_switch_on: trip_pa_switch_on {
+						temperature = <68000>;
+						hysteresis = <2000>;
+						type = "passive";
+				};
+
 				cpu1_alert: trip-alert {
-					temperature = <85000>;
+					temperature = <90000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
 				cpu1_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <2000>;
 					type = "critical";
 				};
@@ -3789,16 +3803,23 @@ cpu2-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <250>;
 			thermal-sensors = <&lvts_mcu MT8195_MCU_LITTLE_CPU2>;
+			sustainable-power = <1500>;
 
 			trips {
+				cpu2_pa_switch_on: trip_pa_switch_on {
+						temperature = <68000>;
+						hysteresis = <2000>;
+						type = "passive";
+				};
+
 				cpu2_alert: trip-alert {
-					temperature = <85000>;
+					temperature = <90000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
 				cpu2_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <2000>;
 					type = "critical";
 				};
@@ -3819,16 +3840,23 @@ cpu3-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <250>;
 			thermal-sensors = <&lvts_mcu MT8195_MCU_LITTLE_CPU3>;
+			sustainable-power = <1500>;
 
 			trips {
+				cpu3_pa_switch_on: trip_pa_switch_on {
+						temperature = <68000>;
+						hysteresis = <2000>;
+						type = "passive";
+				};
+
 				cpu3_alert: trip-alert {
-					temperature = <85000>;
+					temperature = <90000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
 				cpu3_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <2000>;
 					type = "critical";
 				};
@@ -3849,16 +3877,23 @@ cpu4-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <250>;
 			thermal-sensors = <&lvts_mcu MT8195_MCU_BIG_CPU0>;
+			sustainable-power = <1500>;
 
 			trips {
+				cpu4_pa_switch_on: trip_pa_switch_on {
+						temperature = <68000>;
+						hysteresis = <2000>;
+						type = "passive";
+				};
+
 				cpu4_alert: trip-alert {
-					temperature = <85000>;
+					temperature = <90000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
 				cpu4_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <2000>;
 					type = "critical";
 				};
@@ -3879,16 +3914,23 @@ cpu5-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <250>;
 			thermal-sensors = <&lvts_mcu MT8195_MCU_BIG_CPU1>;
+			sustainable-power = <1500>;
 
 			trips {
+				cpu5_pa_switch_on: trip_pa_switch_on {
+						temperature = <68000>;
+						hysteresis = <2000>;
+						type = "passive";
+				};
+
 				cpu5_alert: trip-alert {
-					temperature = <85000>;
+					temperature = <90000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
 				cpu5_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <2000>;
 					type = "critical";
 				};
@@ -3909,16 +3951,23 @@ cpu6-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <250>;
 			thermal-sensors = <&lvts_mcu MT8195_MCU_BIG_CPU2>;
+			sustainable-power = <1500>;
 
 			trips {
+				cpu6_pa_switch_on: trip_pa_switch_on {
+						temperature = <68000>;
+						hysteresis = <2000>;
+						type = "passive";
+				};
+
 				cpu6_alert: trip-alert {
-					temperature = <85000>;
+					temperature = <90000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
 				cpu6_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <2000>;
 					type = "critical";
 				};
@@ -3939,16 +3988,23 @@ cpu7-thermal {
 			polling-delay = <1000>;
 			polling-delay-passive = <250>;
 			thermal-sensors = <&lvts_mcu MT8195_MCU_BIG_CPU3>;
+			sustainable-power = <1500>;
 
 			trips {
+				cpu7_pa_switch_on: trip_pa_switch_on {
+						temperature = <68000>;
+						hysteresis = <2000>;
+						type = "passive";
+				};
+
 				cpu7_alert: trip-alert {
-					temperature = <85000>;
+					temperature = <90000>;
 					hysteresis = <2000>;
 					type = "passive";
 				};
 
 				cpu7_crit: trip-crit {
-					temperature = <100000>;
+					temperature = <115000>;
 					hysteresis = <2000>;
 					type = "critical";
 				};
