From b04747085f2f8f9375e834adfa48a547fa920309 Mon Sep 17 00:00:00 2001 From: Finley Xiao Date: Fri, 21 Jun 2024 17:26:31 +0800 Subject: [PATCH] arm64: dts: rockchip: rk3576: Change opp table for cpu gpu and npu Signed-off-by: Finley Xiao Change-Id: I433b5b8189fb542a5a73298f4db80ed40e5131a6 --- arch/arm64/boot/dts/rockchip/rk3576.dtsi | 370 ++++++++++++++--------- 1 file changed, 223 insertions(+), 147 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3576.dtsi b/arch/arm64/boot/dts/rockchip/rk3576.dtsi index 034f1a73890b..a1633911a4af 100644 --- a/arch/arm64/boot/dts/rockchip/rk3576.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3576.dtsi @@ -398,12 +398,17 @@ nvmem-cell-names = "leakage", "opp-info"; rockchip,pvtm-voltage-sel = < - 0 1939 0 - 1940 1969 1 - 1970 1999 2 - 2000 2029 3 - 2030 2059 4 - 2060 9999 5 + 0 1764 0 + 1765 1789 1 + 1790 1819 2 + 1820 1854 3 + 1855 1889 4 + 1890 1924 5 + 1925 1959 6 + 1960 1999 7 + 2000 2039 8 + 2040 2079 9 + 2080 9999 10 >; rockchip,pvtm-pvtpll; rockchip,pvtpll = <&litcore_pvtpll>; @@ -433,78 +438,87 @@ opp-408000000 { opp-hz = /bits/ 64 <408000000>; - opp-microvolt = <700000 700000 950000>; + opp-microvolt = <712500 712500 950000>; clock-latency-ns = <40000>; }; opp-600000000 { opp-hz = /bits/ 64 <600000000>; - opp-microvolt = <700000 700000 950000>; + opp-microvolt = <712500 712500 950000>; clock-latency-ns = <40000>; }; opp-816000000 { opp-hz = /bits/ 64 <816000000>; - opp-microvolt = <700000 700000 950000>; + opp-microvolt = <712500 712500 950000>; clock-latency-ns = <40000>; }; opp-1008000000 { opp-hz = /bits/ 64 <1008000000>; - opp-microvolt = <700000 700000 950000>; + opp-microvolt = <712500 712500 950000>; + opp-microvolt-L0 = <725000 725000 950000>; clock-latency-ns = <40000>; }; opp-1200000000 { opp-hz = /bits/ 64 <1200000000>; - opp-microvolt = <700000 700000 950000>; + opp-microvolt = <712500 712500 950000>; + opp-microvolt-L0 = <737500 737500 950000>; + opp-microvolt-L1 = <725000 725000 950000>; clock-latency-ns = <40000>; }; opp-1416000000 { opp-hz = /bits/ 64 <1416000000>; - opp-microvolt = <725000 725000 950000>; - opp-microvolt-L1 = <712500 712500 950000>; - opp-microvolt-L2 = <700000 700000 950000>; - opp-microvolt-L3 = <700000 700000 950000>; - opp-microvolt-L4 = <700000 700000 950000>; - opp-microvolt-L5 = <700000 700000 950000>; + opp-microvolt = <712500 712500 950000>; + opp-microvolt-L0 = <775000 775000 950000>; + opp-microvolt-L1 = <762500 762500 950000>; + opp-microvolt-L2 = <750000 750000 950000>; + opp-microvolt-L3 = <750000 750000 950000>; + opp-microvolt-L4 = <737500 737500 950000>; + opp-microvolt-L5 = <725000 725000 950000>; clock-latency-ns = <40000>; }; opp-1608000000 { opp-hz = /bits/ 64 <1608000000>; - opp-microvolt = <750000 750000 950000>; - opp-microvolt-L1 = <750000 750000 950000>; - opp-microvolt-L2 = <737500 737500 950000>; - opp-microvolt-L3 = <737500 737500 950000>; - opp-microvolt-L4 = <725000 725000 950000>; - opp-microvolt-L5 = <712500 712500 950000>; + opp-microvolt = <812500 812500 950000>; + opp-microvolt-L1 = <800000 800000 950000>; + opp-microvolt-L2 = <787500 787500 950000>; + opp-microvolt-L3 = <787500 787500 950000>; + opp-microvolt-L4 = <775000 775000 950000>; + opp-microvolt-L5 = <762500 762500 950000>; + opp-microvolt-L6 = <750000 750000 950000>; + opp-microvolt-L7 = <737500 737500 950000>; + opp-microvolt-L8 = <725000 725000 950000>; + opp-microvolt-L9 = <725000 725000 950000>; + opp-microvolt-L10 = <712500 712500 950000>; clock-latency-ns = <40000>; }; opp-1800000000 { opp-hz = /bits/ 64 <1800000000>; - opp-microvolt = <825000 825000 950000>; - opp-microvolt-L1 = <825000 825000 950000>; - opp-microvolt-L2 = <812500 812500 950000>; - opp-microvolt-L3 = <800000 800000 950000>; - opp-microvolt-L4 = <787500 787500 950000>; - opp-microvolt-L5 = <775000 775000 950000>; + opp-microvolt = <887500 887500 950000>; + opp-microvolt-L1 = <875000 875000 950000>; + opp-microvolt-L2 = <862500 862500 950000>; + opp-microvolt-L3 = <850000 850000 950000>; + opp-microvolt-L4 = <837500 837500 950000>; + opp-microvolt-L5 = <825000 825000 950000>; + opp-microvolt-L6 = <812500 812500 950000>; + opp-microvolt-L7 = <800000 800000 950000>; + opp-microvolt-L8 = <787500 787500 950000>; + opp-microvolt-L9 = <775000 775000 950000>; + opp-microvolt-L10 = <762500 762500 950000>; clock-latency-ns = <40000>; opp-suspend; }; opp-2016000000 { opp-hz = /bits/ 64 <2016000000>; - opp-microvolt = <900000 900000 950000>; - opp-microvolt-L1 = <887500 887500 950000>; - opp-microvolt-L2 = <875000 875000 950000>; - opp-microvolt-L3 = <862500 862500 950000>; - opp-microvolt-L4 = <850000 850000 950000>; - opp-microvolt-L5 = <837500 837500 950000>; - clock-latency-ns = <40000>; - }; - opp-2208000000 { - opp-hz = /bits/ 64 <2208000000>; opp-microvolt = <950000 950000 950000>; opp-microvolt-L1 = <937500 937500 950000>; opp-microvolt-L2 = <925000 925000 950000>; opp-microvolt-L3 = <912500 912500 950000>; opp-microvolt-L4 = <900000 900000 950000>; opp-microvolt-L5 = <887500 887500 950000>; + opp-microvolt-L6 = <875000 875000 950000>; + opp-microvolt-L7 = <862500 862500 950000>; + opp-microvolt-L8 = <850000 850000 950000>; + opp-microvolt-L9 = <837500 837500 950000>; + opp-microvolt-L10 = <825000 825000 950000>; clock-latency-ns = <40000>; }; }; @@ -518,13 +532,19 @@ nvmem-cell-names = "leakage", "opp-info"; rockchip,pvtm-voltage-sel = < - 0 2065 0 - 2066 2095 1 - 2096 2125 2 - 2126 2155 3 - 2156 2185 4 - 2186 9999 5 + 0 1919 0 + 1920 1949 1 + 1950 1979 2 + 1980 2009 3 + 2010 2049 4 + 2050 2089 5 + 2090 2129 6 + 2130 2169 7 + 2170 2209 8 + 2210 2249 9 + 2250 9999 10 >; + rockchip,pvtm-low-len-sel = <0>; rockchip,pvtm-pvtpll; rockchip,pvtpll = <&bigcore_pvtpll>; rockchip,pvtm-offset = <0x54>; @@ -552,88 +572,96 @@ opp-408000000 { opp-hz = /bits/ 64 <408000000>; - opp-microvolt = <700000 700000 950000>; + opp-microvolt = <712500 712500 950000>; clock-latency-ns = <40000>; opp-suspend; }; opp-600000000 { opp-hz = /bits/ 64 <600000000>; - opp-microvolt = <700000 700000 950000>; + opp-microvolt = <712500 712500 950000>; clock-latency-ns = <40000>; }; opp-816000000 { opp-hz = /bits/ 64 <816000000>; - opp-microvolt = <700000 700000 950000>; + opp-microvolt = <712500 712500 950000>; clock-latency-ns = <40000>; }; opp-1008000000 { opp-hz = /bits/ 64 <1008000000>; - opp-microvolt = <700000 700000 950000>; + opp-microvolt = <712500 712500 950000>; clock-latency-ns = <40000>; }; opp-1200000000 { opp-hz = /bits/ 64 <1200000000>; - opp-microvolt = <700000 700000 950000>; + opp-microvolt = <712500 712500 950000>; + opp-microvolt-L0 = <750000 750000 950000>; + opp-microvolt-L1 = <750000 750000 950000>; + opp-microvolt-L2 = <737500 737500 950000>; + opp-microvolt-L3 = <725000 725000 950000>; clock-latency-ns = <40000>; }; opp-1416000000 { opp-hz = /bits/ 64 <1416000000>; opp-microvolt = <712500 712500 950000>; - opp-microvolt-L1 = <700000 700000 950000>; - opp-microvolt-L2 = <700000 700000 950000>; - opp-microvolt-L3 = <700000 700000 950000>; - opp-microvolt-L4 = <700000 700000 950000>; - opp-microvolt-L5 = <700000 700000 950000>; + opp-microvolt-L0 = <750000 750000 950000>; + opp-microvolt-L1 = <750000 750000 950000>; + opp-microvolt-L2 = <737500 737500 950000>; + opp-microvolt-L3 = <725000 725000 950000>; clock-latency-ns = <40000>; }; opp-1608000000 { opp-hz = /bits/ 64 <1608000000>; - opp-microvolt = <737500 737500 950000>; - opp-microvolt-L1 = <725000 725000 950000>; - opp-microvolt-L2 = <712500 712500 950000>; - opp-microvolt-L3 = <700000 700000 950000>; - opp-microvolt-L4 = <700000 700000 950000>; - opp-microvolt-L5 = <700000 700000 950000>; + opp-microvolt = <725000 725000 950000>; + opp-microvolt-L0 = <775000 775000 950000>; + opp-microvolt-L1 = <775000 775000 950000>; + opp-microvolt-L2 = <762500 762500 950000>; + opp-microvolt-L3 = <750000 750000 950000>; + opp-microvolt-L4 = <737500 737500 950000>; clock-latency-ns = <40000>; }; opp-1800000000 { opp-hz = /bits/ 64 <1800000000>; - opp-microvolt = <800000 800000 950000>; - opp-microvolt-L1 = <787500 787500 950000>; - opp-microvolt-L2 = <775000 775000 950000>; - opp-microvolt-L3 = <762500 762500 950000>; - opp-microvolt-L4 = <750000 750000 950000>; - opp-microvolt-L5 = <737500 737500 950000>; + opp-microvolt = <825000 825000 950000>; + opp-microvolt-L1 = <825000 825000 950000>; + opp-microvolt-L2 = <812500 812500 950000>; + opp-microvolt-L3 = <800000 800000 950000>; + opp-microvolt-L4 = <787500 787500 950000>; + opp-microvolt-L5 = <775000 775000 950000>; + opp-microvolt-L6 = <762500 762500 950000>; + opp-microvolt-L7 = <750000 750000 950000>; + opp-microvolt-L8 = <737500 737500 950000>; + opp-microvolt-L9 = <725000 725000 950000>; + opp-microvolt-L10 = <725000 725000 950000>; clock-latency-ns = <40000>; }; opp-2016000000 { opp-hz = /bits/ 64 <2016000000>; - opp-microvolt = <862500 862500 950000>; - opp-microvolt-L1 = <850000 850000 950000>; - opp-microvolt-L2 = <837500 837500 950000>; - opp-microvolt-L3 = <825000 825000 950000>; - opp-microvolt-L4 = <812500 812500 950000>; - opp-microvolt-L5 = <800000 800000 950000>; + opp-microvolt = <887500 887500 950000>; + opp-microvolt-L1 = <887500 887500 950000>; + opp-microvolt-L2 = <875000 875000 950000>; + opp-microvolt-L3 = <862500 862500 950000>; + opp-microvolt-L4 = <850000 850000 950000>; + opp-microvolt-L5 = <837500 837500 950000>; + opp-microvolt-L6 = <825000 825000 950000>; + opp-microvolt-L7 = <812500 812500 950000>; + opp-microvolt-L8 = <800000 800000 950000>; + opp-microvolt-L9 = <787500 787500 950000>; + opp-microvolt-L10 = <775000 775000 950000>; clock-latency-ns = <40000>; }; opp-2208000000 { opp-hz = /bits/ 64 <2208000000>; - opp-microvolt = <925000 925000 950000>; - opp-microvolt-L1 = <912500 912500 950000>; - opp-microvolt-L2 = <900000 900000 950000>; - opp-microvolt-L3 = <887500 887500 950000>; - opp-microvolt-L4 = <875000 875000 950000>; - opp-microvolt-L5 = <862500 862500 950000>; - clock-latency-ns = <40000>; - }; - opp-2304000000 { - opp-hz = /bits/ 64 <2304000000>; opp-microvolt = <950000 950000 950000>; - opp-microvolt-L1 = <937500 937500 950000>; - opp-microvolt-L2 = <925000 925000 950000>; - opp-microvolt-L3 = <912500 912500 950000>; - opp-microvolt-L4 = <900000 900000 950000>; - opp-microvolt-L5 = <887500 887500 950000>; + opp-microvolt-L1 = <950000 950000 950000>; + opp-microvolt-L2 = <937500 937500 950000>; + opp-microvolt-L3 = <925000 925000 950000>; + opp-microvolt-L4 = <912500 912500 950000>; + opp-microvolt-L5 = <900000 900000 950000>; + opp-microvolt-L6 = <887500 887500 950000>; + opp-microvolt-L7 = <875000 875000 950000>; + opp-microvolt-L8 = <862500 862500 950000>; + opp-microvolt-L9 = <850000 850000 950000>; + opp-microvolt-L10 = <837500 837500 950000>; clock-latency-ns = <40000>; }; }; @@ -2042,12 +2070,19 @@ nvmem-cell-names = "leakage", "opp-info"; rockchip,pvtm-voltage-sel = < - 0 796 0 - 797 816 1 - 817 836 2 - 837 856 3 - 857 9999 4 + 0 719 0 + 720 739 1 + 740 759 2 + 760 779 3 + 780 799 4 + 800 819 5 + 820 839 6 + 840 859 7 + 860 879 8 + 880 899 9 + 900 9999 10 >; + rockchip,pvtm-low-len-sel = <0>; rockchip,pvtm-pvtpll; rockchip,pvtpll = <&npu_pvtpll>; rockchip,pvtm-offset = <0x54>; @@ -2076,49 +2111,76 @@ opp-300000000 { opp-hz = /bits/ 64 <300000000>; - opp-microvolt = <725000 725000 850000>; + opp-microvolt = <725000 725000 875000>; }; opp-400000000 { opp-hz = /bits/ 64 <400000000>; - opp-microvolt = <725000 725000 850000>; + opp-microvolt = <725000 725000 875000>; }; opp-500000000 { opp-hz = /bits/ 64 <500000000>; - opp-microvolt = <725000 725000 850000>; + opp-microvolt = <725000 725000 875000>; + opp-microvolt-L0 = <737500 737500 875000>; + opp-microvolt-L1 = <737500 737500 875000>; }; opp-600000000 { opp-hz = /bits/ 64 <600000000>; - opp-microvolt = <725000 725000 850000>; + opp-microvolt = <725000 725000 875000>; + opp-microvolt-L0 = <737500 737500 875000>; + opp-microvolt-L1 = <737500 737500 875000>; }; opp-700000000 { opp-hz = /bits/ 64 <700000000>; - opp-microvolt = <750000 750000 850000>; - opp-microvolt-L1 = <737500 737500 850000>; - opp-microvolt-L2 = <725000 725000 850000>; - opp-microvolt-L3 = <725000 725000 850000>; - opp-microvolt-L4 = <725000 725000 850000>; + opp-microvolt = <725000 725000 875000>; + opp-microvolt-L0 = <775000 775000 875000>; + opp-microvolt-L1 = <775000 775000 875000>; + opp-microvolt-L2 = <762500 762500 875000>; + opp-microvolt-L3 = <762500 762500 875000>; + opp-microvolt-L4 = <750000 750000 875000>; + opp-microvolt-L5 = <737500 737500 875000>; + opp-microvolt-L6 = <725000 725000 875000>; }; opp-800000000 { opp-hz = /bits/ 64 <800000000>; - opp-microvolt = <775000 775000 850000>; - opp-microvolt-L1 = <762500 762500 850000>; - opp-microvolt-L2 = <750000 750000 850000>; - opp-microvolt-L3 = <737500 737500 850000>; - opp-microvolt-L4 = <725000 725000 850000>; + opp-microvolt = <800000 800000 875000>; + opp-microvolt-L1 = <800000 800000 875000>; + opp-microvolt-L2 = <787500 787500 875000>; + opp-microvolt-L3 = <775000 775000 875000>; + opp-microvolt-L4 = <762500 762500 875000>; + opp-microvolt-L5 = <750000 750000 875000>; + opp-microvolt-L6 = <737500 737500 875000>; + opp-microvolt-L7 = <725000 725000 875000>; + opp-microvolt-L8 = <725000 725000 875000>; + opp-microvolt-L9 = <725000 725000 875000>; + opp-microvolt-L10 = <725000 725000 875000>; }; opp-900000000 { opp-hz = /bits/ 64 <900000000>; - opp-microvolt = <800000 800000 850000>; - opp-microvolt-L1 = <787500 787500 850000>; - opp-microvolt-L2 = <775000 775000 850000>; - opp-microvolt-L3 = <762500 762500 850000>; - opp-microvolt-L4 = <750000 750000 850000>; + opp-microvolt = <850000 850000 875000>; + opp-microvolt-L1 = <850000 850000 875000>; + opp-microvolt-L2 = <837500 837500 875000>; + opp-microvolt-L3 = <825000 825000 875000>; + opp-microvolt-L4 = <812500 812500 875000>; + opp-microvolt-L5 = <800000 800000 875000>; + opp-microvolt-L6 = <787500 787500 875000>; + opp-microvolt-L7 = <775000 775000 875000>; + opp-microvolt-L8 = <762500 762500 875000>; + opp-microvolt-L9 = <750000 750000 875000>; + opp-microvolt-L10 = <737500 737500 875000>; }; - opp-1000000000 { - opp-hz = /bits/ 64 <1000000000>; - opp-microvolt = <850000 850000 850000>; - opp-microvolt-L3 = <837500 837500 850000>; - opp-microvolt-L4 = <825000 825000 850000>; + opp-950000000 { + opp-hz = /bits/ 64 <950000000>; + opp-microvolt = <875000 875000 875000>; + opp-microvolt-L1 = <875000 875000 875000>; + opp-microvolt-L2 = <862500 862500 875000>; + opp-microvolt-L3 = <850000 850000 875000>; + opp-microvolt-L4 = <837500 837500 875000>; + opp-microvolt-L5 = <825000 825000 875000>; + opp-microvolt-L6 = <812500 812500 875000>; + opp-microvolt-L7 = <800000 800000 875000>; + opp-microvolt-L8 = <787500 787500 875000>; + opp-microvolt-L9 = <775000 775000 875000>; + opp-microvolt-L10 = <762500 762500 875000>; }; }; @@ -2167,12 +2229,19 @@ nvmem-cell-names = "leakage", "opp-info"; rockchip,pvtm-voltage-sel = < - 0 800 0 - 801 820 1 - 821 840 2 - 841 860 3 - 861 9999 4 + 0 704 0 + 705 724 1 + 725 744 2 + 745 764 3 + 765 784 4 + 785 804 5 + 805 824 6 + 825 844 7 + 845 864 8 + 865 884 9 + 885 9999 10 >; + rockchip,pvtm-low-len-sel = <0>; rockchip,pvtm-pvtpll; rockchip,pvtpll = <&gpu_pvtpll>; rockchip,pvtm-offset = <0x54>; @@ -2199,49 +2268,56 @@ opp-300000000 { opp-hz = /bits/ 64 <300000000>; - opp-microvolt = <700000 700000 850000>; + opp-microvolt = <712500 712500 875000>; }; opp-400000000 { opp-hz = /bits/ 64 <400000000>; - opp-microvolt = <700000 700000 850000>; + opp-microvolt = <712500 712500 875000>; }; opp-500000000 { opp-hz = /bits/ 64 <500000000>; - opp-microvolt = <700000 700000 850000>; + opp-microvolt = <712500 712500 875000>; }; opp-600000000 { opp-hz = /bits/ 64 <600000000>; - opp-microvolt = <700000 700000 850000>; + opp-microvolt = <712500 712500 875000>; }; opp-700000000 { opp-hz = /bits/ 64 <700000000>; - opp-microvolt = <725000 725000 850000>; - opp-microvolt-L1 = <712500 712500 850000>; - opp-microvolt-L2 = <700000 700000 850000>; - opp-microvolt-L3 = <700000 700000 850000>; - opp-microvolt-L4 = <700000 700000 850000>; + opp-microvolt = <712500 712500 875000>; + opp-microvolt-L0 = <750000 750000 875000>; + opp-microvolt-L1 = <750000 750000 875000>; + opp-microvolt-L2 = <737500 737500 875000>; + opp-microvolt-L3 = <725000 725000 875000>; + opp-microvolt-L4 = <725000 725000 875000>; }; opp-800000000 { opp-hz = /bits/ 64 <800000000>; - opp-microvolt = <775000 775000 850000>; - opp-microvolt-L1 = <762500 762500 850000>; - opp-microvolt-L2 = <750000 750000 850000>; - opp-microvolt-L3 = <737500 737500 850000>; - opp-microvolt-L4 = <725000 725000 850000>; + opp-microvolt = <812500 812500 875000>; + opp-microvolt-L1 = <812500 812500 875000>; + opp-microvolt-L2 = <800000 800000 875000>; + opp-microvolt-L3 = <787500 787500 875000>; + opp-microvolt-L4 = <775000 775000 875000>; + opp-microvolt-L5 = <762500 762500 875000>; + opp-microvolt-L6 = <750000 750000 875000>; + opp-microvolt-L7 = <737500 737500 875000>; + opp-microvolt-L8 = <725000 725000 875000>; + opp-microvolt-L9 = <725000 725000 875000>; + opp-microvolt-L10 = <725000 725000 875000>; }; opp-900000000 { opp-hz = /bits/ 64 <900000000>; - opp-microvolt = <825000 825000 850000>; - opp-microvolt-L2 = <812500 812500 850000>; - opp-microvolt-L3 = <800000 800000 850000>; - opp-microvolt-L4 = <787500 787500 850000>; - }; - opp-950000000 { - opp-hz = /bits/ 64 <950000000>; - opp-microvolt = <850000 850000 850000>; - opp-microvolt-L2 = <837500 837500 850000>; - opp-microvolt-L3 = <825000 825000 850000>; - opp-microvolt-L4 = <812500 812500 850000>; + opp-microvolt = <875000 875000 875000>; + opp-microvolt-L1 = <875000 875000 875000>; + opp-microvolt-L2 = <862500 862500 875000>; + opp-microvolt-L3 = <850000 850000 875000>; + opp-microvolt-L4 = <837500 837500 875000>; + opp-microvolt-L5 = <825000 825000 875000>; + opp-microvolt-L6 = <812500 812500 875000>; + opp-microvolt-L7 = <800000 800000 875000>; + opp-microvolt-L8 = <787500 787500 875000>; + opp-microvolt-L9 = <775000 775000 875000>; + opp-microvolt-L10 = <762500 762500 875000>; }; };