diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi index f55879b..b79fd50 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi @@ -183,6 +275,71 @@ allwinner,sram = <&ve_sram 1>; }; + gpu_opp_table: opp-table2 { + compatible = "operating-points-v2"; + + opp00 { + opp-hz = /bits/ 64 <756000000>; + opp-microvolt = <1040000>; + }; + opp01 { + opp-hz = /bits/ 64 <624000000>; + opp-microvolt = <950000>; + }; + opp02 { + opp-hz = /bits/ 64 <576000000>; + opp-microvolt = <930000>; + }; + opp03 { + opp-hz = /bits/ 64 <540000000>; + opp-microvolt = <910000>; + }; + opp04 { + opp-hz = /bits/ 64 <504000000>; + opp-microvolt = <890000>; + }; + opp05 { + opp-hz = /bits/ 64 <456000000>; + opp-microvolt = <870000>; + }; + opp06 { + opp-hz = /bits/ 64 <432000000>; + opp-microvolt = <860000>; + }; + opp07 { + opp-hz = /bits/ 64 <420000000>; + opp-microvolt = <850000>; + }; + opp08 { + opp-hz = /bits/ 64 <408000000>; + opp-microvolt = <840000>; + }; + opp09 { + opp-hz = /bits/ 64 <384000000>; + opp-microvolt = <830000>; + }; + opp10 { + opp-hz = /bits/ 64 <360000000>; + opp-microvolt = <820000>; + }; + opp11 { + opp-hz = /bits/ 64 <336000000>; + opp-microvolt = <810000>; + }; + opp12 { + opp-hz = /bits/ 64 <312000000>; + opp-microvolt = <810000>; + }; + opp13 { + opp-hz = /bits/ 64 <264000000>; + opp-microvolt = <810000>; + }; + opp14 { + opp-hz = /bits/ 64 <216000000>; + opp-microvolt = <810000>; + }; + }; + gpu: gpu@1800000 { compatible = "allwinner,sun50i-h6-mali", "arm,mali-t720"; @@ -194,6 +351,7 @@ clocks = <&ccu CLK_GPU>, <&ccu CLK_BUS_GPU>; clock-names = "core", "bus"; resets = <&ccu RST_BUS_GPU>; + operating-points-v2 = <&gpu_opp_table>; status = "disabled"; }; @@ -1024,6 +1182,30 @@ polling-delay-passive = <0>; polling-delay = <0>; thermal-sensors = <&ths 0>; + + trips { + cpu_hot_trip: cpu-hot { + temperature = <80000>; + hysteresis = <2000>; + type = "passive"; + }; + + cpu_very_hot_trip: cpu-very-hot { + temperature = <100000>; + hysteresis = <0>; + type = "critical"; + }; + }; + + cooling-maps { + cpu-hot-limit { + trip = <&cpu_hot_trip>; + cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, + <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, + <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, + <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; + }; + }; }; gpu-thermal {