arm64: dts: rockchip: rk3576: Add opp table rk3576j/m

Change-Id: I4b06f3f7ee4b515a1933e30b6ce385de4312516d
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
This commit is contained in:
Finley Xiao
2024-10-14 09:36:12 +08:00
committed by Tao Huang
parent 4cbd30a423
commit 4ae43cfd70

View File

@@ -400,6 +400,20 @@
nvmem-cell-names = "leakage", "opp-info", "specification_serial_number";
rockchip,supported-hw;
rockchip,pvtm-hw = <0x06>;
rockchip,pvtm-voltage-sel-hw = <
0 1744 0
1745 1774 1
1775 1804 2
1805 1839 3
1840 1874 4
1875 1909 5
1910 1949 6
1950 1989 7
1990 2029 8
2030 2069 9
2070 9999 10
>;
rockchip,pvtm-voltage-sel = <
0 1764 0
1765 1789 1
@@ -439,32 +453,32 @@
rockchip,low-temp-min-volt = <800000>;
opp-408000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <408000000>;
opp-microvolt = <712500 712500 950000>;
clock-latency-ns = <40000>;
};
opp-600000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <600000000>;
opp-microvolt = <712500 712500 950000>;
clock-latency-ns = <40000>;
};
opp-816000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <816000000>;
opp-microvolt = <712500 712500 950000>;
clock-latency-ns = <40000>;
};
opp-1008000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1008000000>;
opp-microvolt = <712500 712500 950000>;
opp-microvolt-L0 = <725000 725000 950000>;
clock-latency-ns = <40000>;
};
opp-1200000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <712500 712500 950000>;
opp-microvolt-L0 = <737500 737500 950000>;
@@ -472,7 +486,7 @@
clock-latency-ns = <40000>;
};
opp-1416000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1416000000>;
opp-microvolt = <712500 712500 950000>;
opp-microvolt-L0 = <775000 775000 950000>;
@@ -484,7 +498,7 @@
clock-latency-ns = <40000>;
};
opp-1608000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <812500 812500 950000>;
opp-microvolt-L1 = <800000 800000 950000>;
@@ -500,7 +514,7 @@
clock-latency-ns = <40000>;
};
opp-1800000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <887500 887500 950000>;
opp-microvolt-L1 = <875000 875000 950000>;
@@ -534,7 +548,7 @@
clock-latency-ns = <40000>;
};
opp-2016000000 {
opp-supported-hw = <0xf7 0xffff>;
opp-supported-hw = <0xf1 0xffff>;
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <950000 950000 950000>;
opp-microvolt-L1 = <937500 937500 950000>;
@@ -549,6 +563,96 @@
opp-microvolt-L10 = <825000 825000 950000>;
clock-latency-ns = <40000>;
};
/* RK3576J/M cluster0 OPPs */
opp-j-m-408000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <408000000>;
opp-microvolt = <750000 750000 950000>;
clock-latency-ns = <40000>;
};
opp-j-m-600000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <600000000>;
opp-microvolt = <750000 750000 950000>;
clock-latency-ns = <40000>;
};
opp-j-m-816000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <816000000>;
opp-microvolt = <750000 750000 950000>;
clock-latency-ns = <40000>;
};
opp-j-m-1008000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1008000000>;
opp-microvolt = <750000 750000 950000>;
clock-latency-ns = <40000>;
};
opp-j-m-1200000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <750000 750000 950000>;
clock-latency-ns = <40000>;
};
opp-j-m-1416000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1416000000>;
opp-microvolt = <750000 750000 950000>;
opp-microvolt-L0 = <775000 775000 950000>;
opp-microvolt-L1 = <762500 762500 950000>;
clock-latency-ns = <40000>;
opp-suspend;
};
cluster0_opp_j_m_1608000000: opp-j-m-1608000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <825000 825000 950000>;
opp-microvolt-L1 = <812500 812500 950000>;
opp-microvolt-L2 = <800000 800000 950000>;
opp-microvolt-L3 = <787500 787500 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 = <750000 750000 950000>;
opp-microvolt-L9 = <750000 750000 950000>;
opp-microvolt-L10 = <750000 750000 950000>;
clock-latency-ns = <40000>;
};
cluster0_opp_j_m_1800000000: opp-j-m-1800000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1800000000>;
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>;
};
cluster0_opp_j_m_1920000000: opp-j-m-1920000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1920000000>;
opp-microvolt = <937500 937500 950000>;
opp-microvolt-L1 = <925000 925000 950000>;
opp-microvolt-L2 = <912500 912500 950000>;
opp-microvolt-L3 = <900000 900000 950000>;
opp-microvolt-L4 = <887500 887500 950000>;
opp-microvolt-L5 = <875000 875000 950000>;
opp-microvolt-L6 = <862500 862500 950000>;
opp-microvolt-L7 = <850000 850000 950000>;
opp-microvolt-L8 = <837500 837500 950000>;
opp-microvolt-L9 = <825000 825000 950000>;
opp-microvolt-L10 = <812500 812500 950000>;
clock-latency-ns = <40000>;
};
};
cluster1_opp_table: cluster1-opp-table {
@@ -560,6 +664,20 @@
nvmem-cell-names = "leakage", "opp-info", "specification_serial_number";
rockchip,supported-hw;
rockchip,pvtm-hw = <0x06>;
rockchip,pvtm-voltage-sel-hw = <
0 1874 0
1875 1904 1
1905 1934 2
1935 1969 3
1970 2009 4
2010 2049 5
2050 2089 6
2090 2129 7
2130 2169 8
2170 2209 9
2210 9999 10
>;
rockchip,pvtm-voltage-sel = <
0 1919 0
1920 1949 1
@@ -599,32 +717,32 @@
rockchip,low-temp-min-volt = <800000>;
opp-408000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <408000000>;
opp-microvolt = <712500 712500 950000>;
clock-latency-ns = <40000>;
opp-suspend;
};
opp-600000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <600000000>;
opp-microvolt = <712500 712500 950000>;
clock-latency-ns = <40000>;
};
opp-816000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <816000000>;
opp-microvolt = <712500 712500 950000>;
clock-latency-ns = <40000>;
};
opp-1008000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1008000000>;
opp-microvolt = <712500 712500 950000>;
clock-latency-ns = <40000>;
};
opp-1200000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <712500 712500 950000>;
opp-microvolt-L0 = <750000 750000 950000>;
@@ -634,7 +752,7 @@
clock-latency-ns = <40000>;
};
opp-1416000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1416000000>;
opp-microvolt = <712500 712500 950000>;
opp-microvolt-L0 = <750000 750000 950000>;
@@ -644,7 +762,7 @@
clock-latency-ns = <40000>;
};
opp-1608000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <725000 725000 950000>;
opp-microvolt-L0 = <775000 775000 950000>;
@@ -655,7 +773,7 @@
clock-latency-ns = <40000>;
};
opp-1800000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <825000 825000 950000>;
opp-microvolt-L1 = <825000 825000 950000>;
@@ -671,7 +789,7 @@
clock-latency-ns = <40000>;
};
opp-2016000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <887500 887500 950000>;
opp-microvolt-L1 = <887500 887500 950000>;
@@ -704,7 +822,7 @@
clock-latency-ns = <40000>;
};
opp-2208000000 {
opp-supported-hw = <0xf7 0xffff>;
opp-supported-hw = <0xf1 0xffff>;
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <950000 950000 950000>;
opp-microvolt-L1 = <950000 950000 950000>;
@@ -719,6 +837,103 @@
opp-microvolt-L10 = <837500 837500 950000>;
clock-latency-ns = <40000>;
};
/* RK3576J/M cluster1 OPPs */
opp-j-m-408000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <408000000>;
opp-microvolt = <750000 750000 950000>;
clock-latency-ns = <40000>;
opp-suspend;
};
opp-j-m-600000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <600000000>;
opp-microvolt = <750000 750000 950000>;
clock-latency-ns = <40000>;
};
opp-j-m-816000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <816000000>;
opp-microvolt = <750000 750000 950000>;
clock-latency-ns = <40000>;
};
opp-j-m-1008000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1008000000>;
opp-microvolt = <750000 750000 950000>;
clock-latency-ns = <40000>;
};
opp-j-m-1200000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <750000 750000 950000>;
clock-latency-ns = <40000>;
};
opp-j-m-1416000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1416000000>;
opp-microvolt = <750000 750000 950000>;
opp-microvolt-L0 = <762500 762500 950000>;
clock-latency-ns = <40000>;
};
opp-j-m-1608000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <750000 750000 950000>;
opp-microvolt-L0 = <787500 787500 950000>;
opp-microvolt-L1 = <775000 775000 950000>;
opp-microvolt-L2 = <762500 762500 950000>;
clock-latency-ns = <40000>;
};
cluster1_opp_j_m_1800000000: opp-j-m-1800000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <850000 850000 950000>;
opp-microvolt-L1 = <837500 837500 950000>;
opp-microvolt-L2 = <825000 825000 950000>;
opp-microvolt-L3 = <812500 812500 950000>;
opp-microvolt-L4 = <800000 800000 950000>;
opp-microvolt-L5 = <787500 787500 950000>;
opp-microvolt-L6 = <775000 775000 950000>;
opp-microvolt-L7 = <762500 762500 950000>;
opp-microvolt-L8 = <750000 750000 950000>;
opp-microvolt-L9 = <750000 750000 950000>;
opp-microvolt-L10 = <750000 750000 950000>;
clock-latency-ns = <40000>;
};
cluster1_opp_j_m_2016000000: opp-j-m-2016000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <912500 912500 950000>;
opp-microvolt-L1 = <900000 900000 950000>;
opp-microvolt-L2 = <887500 887500 950000>;
opp-microvolt-L3 = <875000 875000 950000>;
opp-microvolt-L4 = <862500 862500 950000>;
opp-microvolt-L5 = <850000 850000 950000>;
opp-microvolt-L6 = <837500 837500 950000>;
opp-microvolt-L7 = <825000 825000 950000>;
opp-microvolt-L8 = <812500 812500 950000>;
opp-microvolt-L9 = <800000 800000 950000>;
opp-microvolt-L10 = <787500 787500 950000>;
clock-latency-ns = <40000>;
};
cluster1_opp_j_m_2112000000: opp-j-m-2112000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <2112000000>;
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>;
};
};
bus_a72: bus-a72 {
@@ -734,8 +949,9 @@
compatible = "operating-points-v2";
opp-shared;
nvmem-cells = <&log_leakage>;
nvmem-cell-names = "leakage";
nvmem-cells = <&log_leakage>, <&specification_serial_number>;
nvmem-cell-names = "leakage", "specification_serial_number";
rockchip,supported-hw;
rockchip,leakage-voltage-sel = <
1 10 0
@@ -744,23 +960,46 @@
>;
opp-1800000000 {
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <750000 750000 800000>;
opp-microvolt-L1 = <725000 725000 800000>;
opp-microvolt-L2 = <712500 712500 800000>;
};
opp-2016000000 {
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <775000 775000 800000>;
opp-microvolt-L1 = <750000 750000 800000>;
opp-microvolt-L2 = <712500 712500 800000>;
};
opp-2208000000 {
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <800000 800000 800000>;
opp-microvolt-L1 = <775000 775000 800000>;
opp-microvolt-L2 = <737500 737500 800000>;
};
opp-j-m-1800000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <750000 750000 800000>;
};
opp-j-m-2016000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <775000 775000 800000>;
opp-microvolt-L1 = <750000 750000 800000>;
opp-microvolt-L2 = <750000 750000 800000>;
};
opp-j-m-2208000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <800000 800000 800000>;
opp-microvolt-L1 = <775000 775000 800000>;
opp-microvolt-L2 = <750000 750000 800000>;
};
};
cpuinfo {
@@ -943,8 +1182,9 @@
dmc_opp_table: dmc-opp-table {
compatible = "operating-points-v2";
nvmem-cells = <&log_leakage>, <&logic_opp_info>;
nvmem-cell-names = "leakage", "opp-info";
nvmem-cells = <&log_leakage>, <&logic_opp_info>, <&specification_serial_number>;
nvmem-cell-names = "leakage", "opp-info", "specification_serial_number";
rockchip,supported-hw;
rockchip,early-min-microvolt = <0 750000>; /* <vdd_ddr vdd_logic> */
@@ -958,6 +1198,7 @@
21 254 2
>;
opp-528000000 {
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <528000000>;
opp-microvolt = <750000 750000 850000>,
<750000 750000 800000>;
@@ -967,6 +1208,7 @@
<712500 712500 800000>;
};
opp-1068000000 {
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1068000000>;
opp-microvolt = <750000 750000 850000>,
<750000 750000 800000>;
@@ -976,6 +1218,7 @@
<712500 712500 800000>;
};
opp-1560000000 {
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <1560000000>;
opp-microvolt = <750000 750000 850000>,
<750000 750000 800000>;
@@ -985,6 +1228,7 @@
<725000 725000 800000>;
};
opp-2736000000 {
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <2736000000>;
opp-microvolt = <825000 825000 850000>,
<750000 750000 800000>;
@@ -993,6 +1237,35 @@
opp-microvolt-L2 = <775000 775000 850000>,
<725000 725000 800000>;
};
/* RK3576J/M DMC OPPs */
opp-j-m-528000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <528000000>;
opp-microvolt = <750000 750000 850000>,
<750000 750000 800000>;
};
opp-j-m-1068000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1068000000>;
opp-microvolt = <750000 750000 850000>,
<750000 750000 800000>;
};
opp-j-m-1560000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <1560000000>;
opp-microvolt = <750000 750000 850000>,
<750000 750000 800000>;
};
opp-j-m-2736000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <2736000000>;
opp-microvolt = <825000 825000 850000>,
<750000 750000 800000>;
opp-microvolt-L1 = <800000 800000 850000>,
<750000 750000 800000>;
opp-microvolt-L2 = <775000 775000 850000>,
<750000 750000 800000>;
};
};
firmware {
@@ -2170,6 +2443,19 @@
nvmem-cell-names = "leakage", "opp-info", "specification_serial_number";
rockchip,supported-hw;
rockchip,pvtm-hw = <0x06>;
rockchip,pvtm-voltage-sel-hw = <
0 739 0
740 759 1
760 779 2
780 799 3
800 819 4
820 839 5
840 859 6
860 879 7
880 899 8
900 9999 9
>;
rockchip,pvtm-voltage-sel = <
0 719 0
720 739 1
@@ -2211,12 +2497,12 @@
rockchip,low-temp-min-volt = <750000>;
opp-300000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <300000000>;
opp-microvolt = <725000 725000 875000>;
};
opp-400000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <400000000>;
opp-microvolt = <725000 725000 875000>;
};
@@ -2230,21 +2516,21 @@
opp-microvolt-L2 = <737500 737500 875000>;
};
opp-500000000 {
opp-supported-hw = <0xf7 0xffff>;
opp-supported-hw = <0xf1 0xffff>;
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <725000 725000 875000>;
opp-microvolt-L0 = <737500 737500 875000>;
opp-microvolt-L1 = <737500 737500 875000>;
};
opp-600000000 {
opp-supported-hw = <0xf7 0xffff>;
opp-supported-hw = <0xf1 0xffff>;
opp-hz = /bits/ 64 <600000000>;
opp-microvolt = <725000 725000 875000>;
opp-microvolt-L0 = <737500 737500 875000>;
opp-microvolt-L1 = <737500 737500 875000>;
};
opp-700000000 {
opp-supported-hw = <0xf7 0xffff>;
opp-supported-hw = <0xf1 0xffff>;
opp-hz = /bits/ 64 <700000000>;
opp-microvolt = <725000 725000 875000>;
opp-microvolt-L0 = <775000 775000 875000>;
@@ -2256,7 +2542,7 @@
opp-microvolt-L6 = <725000 725000 875000>;
};
opp-800000000 {
opp-supported-hw = <0xf7 0xffff>;
opp-supported-hw = <0xf1 0xffff>;
opp-hz = /bits/ 64 <800000000>;
opp-microvolt = <800000 800000 875000>;
opp-microvolt-L1 = <800000 800000 875000>;
@@ -2271,7 +2557,7 @@
opp-microvolt-L10 = <725000 725000 875000>;
};
opp-900000000 {
opp-supported-hw = <0xf7 0xffff>;
opp-supported-hw = <0xf1 0xffff>;
opp-hz = /bits/ 64 <900000000>;
opp-microvolt = <850000 850000 875000>;
opp-microvolt-L1 = <850000 850000 875000>;
@@ -2286,7 +2572,7 @@
opp-microvolt-L10 = <737500 737500 875000>;
};
opp-950000000 {
opp-supported-hw = <0xf7 0xffff>;
opp-supported-hw = <0xf1 0xffff>;
opp-hz = /bits/ 64 <950000000>;
opp-microvolt = <875000 875000 875000>;
opp-microvolt-L1 = <875000 875000 875000>;
@@ -2300,6 +2586,61 @@
opp-microvolt-L9 = <775000 775000 875000>;
opp-microvolt-L10 = <762500 762500 875000>;
};
/* RK3576J/M NPU OPPs */
opp-j-m-300000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <300000000>;
opp-microvolt = <750000 750000 875000>;
};
opp-j-m-400000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <400000000>;
opp-microvolt = <750000 750000 875000>;
};
opp-j-m-500000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <750000 750000 875000>;
};
opp-j-m-600000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <600000000>;
opp-microvolt = <750000 750000 875000>;
};
opp-j-m-700000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <700000000>;
opp-microvolt = <750000 750000 875000>;
opp-microvolt-L0 = <787500 787500 875000>;
opp-microvolt-L1 = <775000 775000 875000>;
opp-microvolt-L2 = <762500 762500 875000>;
};
npu_opp_j_m_800000000: opp-j-m-800000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <800000000>;
opp-microvolt = <750000 750000 875000>;
opp-microvolt-L0 = <812500 812500 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>;
};
npu_opp_j_m_850000000: opp-j-m-850000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <850000000>;
opp-microvolt = <837500 837500 875000>;
opp-microvolt-L1 = <825000 825000 875000>;
opp-microvolt-L2 = <812500 812500 875000>;
opp-microvolt-L3 = <800000 800000 875000>;
opp-microvolt-L4 = <787500 787500 875000>;
opp-microvolt-L5 = <775000 775000 875000>;
opp-microvolt-L6 = <762500 762500 875000>;
opp-microvolt-L7 = <750000 750000 875000>;
opp-microvolt-L8 = <750000 750000 875000>;
opp-microvolt-L9 = <750000 750000 875000>;
};
};
rknpu_mmu: iommu@27702000 {
@@ -2347,6 +2688,20 @@
nvmem-cell-names = "leakage", "opp-info", "specification_serial_number";
rockchip,supported-hw;
rockchip,pvtm-hw = <0x06>;
rockchip,pvtm-voltage-sel-hw = <
0 689 0
690 709 1
710 729 2
730 749 3
750 769 4
770 789 5
790 809 6
810 829 7
830 849 8
850 869 9
870 9999 10
>;
rockchip,pvtm-voltage-sel = <
0 704 0
705 724 1
@@ -2386,27 +2741,27 @@
rockchip,low-temp-min-volt = <750000>;
opp-300000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <300000000>;
opp-microvolt = <712500 712500 875000>;
};
opp-400000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <400000000>;
opp-microvolt = <712500 712500 875000>;
};
opp-500000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <712500 712500 875000>;
};
opp-600000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <600000000>;
opp-microvolt = <712500 712500 875000>;
};
opp-700000000 {
opp-supported-hw = <0xff 0xffff>;
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <700000000>;
opp-microvolt = <712500 712500 875000>;
opp-microvolt-L0 = <750000 750000 875000>;
@@ -2432,7 +2787,7 @@
opp-microvolt-L10 = <725000 725000 875000>;
};
opp-800000000 {
opp-supported-hw = <0xf7 0xffff>;
opp-supported-hw = <0xf1 0xffff>;
opp-hz = /bits/ 64 <800000000>;
opp-microvolt = <812500 812500 875000>;
opp-microvolt-L1 = <812500 812500 875000>;
@@ -2447,7 +2802,7 @@
opp-microvolt-L10 = <725000 725000 875000>;
};
opp-900000000 {
opp-supported-hw = <0xf7 0xffff>;
opp-supported-hw = <0xf1 0xffff>;
opp-hz = /bits/ 64 <900000000>;
opp-microvolt = <875000 875000 875000>;
opp-microvolt-L1 = <875000 875000 875000>;
@@ -2461,6 +2816,50 @@
opp-microvolt-L9 = <775000 775000 875000>;
opp-microvolt-L10 = <762500 762500 875000>;
};
/* RK3576J/M GPU OPPs */
opp-j-m-300000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <300000000>;
opp-microvolt = <750000 750000 950000>;
};
opp-j-m-400000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <400000000>;
opp-microvolt = <750000 750000 950000>;
};
opp-j-m-500000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <750000 750000 950000>;
};
opp-j-m-600000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <600000000>;
opp-microvolt = <750000 750000 950000>;
};
opp-j-m-700000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <700000000>;
opp-microvolt = <750000 750000 950000>;
opp-microvolt-L0 = <775000 775000 950000>;
opp-microvolt-L1 = <762500 762500 950000>;
};
gpu_opp_j_m_800000000: opp-j-m-800000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <800000000>;
opp-microvolt = <850000 850000 875000>;
opp-microvolt-L1 = <837500 837500 875000>;
opp-microvolt-L2 = <825000 825000 875000>;
opp-microvolt-L3 = <812500 812500 875000>;
opp-microvolt-L4 = <800000 800000 875000>;
opp-microvolt-L5 = <787500 787500 875000>;
opp-microvolt-L6 = <775000 775000 875000>;
opp-microvolt-L7 = <762500 762500 875000>;
opp-microvolt-L8 = <750000 750000 875000>;
opp-microvolt-L9 = <750000 750000 875000>;
opp-microvolt-L10 = <750000 750000 875000>;
};
};
ebc: ebc@27900000 {
@@ -3140,8 +3539,9 @@
vop_opp_table: vop-opp-table {
compatible = "operating-points-v2";
nvmem-cells = <&log_leakage>;
nvmem-cell-names = "leakage";
nvmem-cells = <&log_leakage>, <&specification_serial_number>;
nvmem-cell-names = "leakage", "specification_serial_number";
rockchip,supported-hw;
rockchip,early-min-microvolt = <750000>; /* vdd_logic */
@@ -3157,23 +3557,43 @@
21 254 2
>;
opp-500000000 {
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <725000 725000 800000>;
opp-microvolt-L1 = <712500 712500 800000>;
opp-microvolt-L2 = <712500 712500 800000>;
};
opp-594000000 {
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <594000000>;
opp-microvolt = <750000 750000 800000>;
opp-microvolt-L1 = <750000 750000 800000>;
opp-microvolt-L2 = <725000 725000 800000>;
};
opp-702000000 {
opp-supported-hw = <0xf9 0xffff>;
opp-hz = /bits/ 64 <702000000>;
opp-microvolt = <750000 750000 800000>;
opp-microvolt-L1 = <750000 750000 800000>;
opp-microvolt-L2 = <725000 725000 800000>;
};
/* RK3576J/M VOP OPPs */
opp-j-m-500000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <750000 750000 800000>;
};
opp-j-m-594000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <594000000>;
opp-microvolt = <750000 750000 800000>;
};
opp-j-m-702000000 {
opp-supported-hw = <0x06 0xffff>;
opp-hz = /bits/ 64 <702000000>;
opp-microvolt = <750000 750000 800000>;
};
};
vop_mmu: iommu@27d07e00 {