aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiang Chen <cl@rock-chips.com>2018-03-22 19:52:41 +0800
committerAmit Uttamchandani <amituttam@google.com>2018-05-14 12:27:23 -0700
commit4db961ab5d9e2838fed5dd8bd839d478afb21c6a (patch)
tree126a52e2303a9f6bc2ef842bcb413220663219b9
parentcf8e3f9bd7f0edf56103e0098ca10e0d9db4767e (diff)
downloadrk-v4.4-4db961ab5d9e2838fed5dd8bd839d478afb21c6a.tar.gz
ARM: dts: rockchip: adjust opp-table by leakage for rk322x
Change-Id: I3758f2915a9eea0febf982c49c9452f17b6eba3c Signed-off-by: Liang Chen <cl@rock-chips.com> (cherry picked from commit 8748fb44c24f58b90da06ebda04dba807de7022d)
-rw-r--r--arch/arm/boot/dts/rk3229-cpu-opp.dtsi22
-rw-r--r--arch/arm/boot/dts/rk322x.dtsi61
2 files changed, 81 insertions, 2 deletions
diff --git a/arch/arm/boot/dts/rk3229-cpu-opp.dtsi b/arch/arm/boot/dts/rk3229-cpu-opp.dtsi
index 5c7cb6150f37..e025b05788ce 100644
--- a/arch/arm/boot/dts/rk3229-cpu-opp.dtsi
+++ b/arch/arm/boot/dts/rk3229-cpu-opp.dtsi
@@ -47,42 +47,64 @@
compatible = "operating-points-v2";
opp-shared;
+ clocks = <&cru PLL_APLL>;
+ rockchip,max-volt = <1350000>;
+ rockchip,leakage-voltage-sel = <
+ 1 4 0
+ 5 254 1
+ >;
nvmem-cells = <&cpu_leakage>;
nvmem-cell-names = "cpu_leakage";
opp-408000000 {
opp-hz = /bits/ 64 <408000000>;
opp-microvolt = <950000>;
+ opp-microvolt-L0 = <950000>;
+ opp-microvolt-L1 = <950000>;
clock-latency-ns = <40000>;
opp-suspend;
};
opp-600000000 {
opp-hz = /bits/ 64 <600000000>;
opp-microvolt = <975000>;
+ opp-microvolt-L0 = <975000>;
+ opp-microvolt-L1 = <975000>;
};
opp-816000000 {
opp-hz = /bits/ 64 <816000000>;
opp-microvolt = <1000000>;
+ opp-microvolt-L0 = <1000000>;
+ opp-microvolt-L1 = <1000000>;
};
opp-1008000000 {
opp-hz = /bits/ 64 <1008000000>;
opp-microvolt = <1175000>;
+ opp-microvolt-L0 = <1175000>;
+ opp-microvolt-L1 = <1125000>;
};
opp-1200000000 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <1275000>;
+ opp-microvolt-L0 = <1275000>;
+ opp-microvolt-L1 = <1225000>;
};
opp-1296000000 {
opp-hz = /bits/ 64 <1296000000>;
opp-microvolt = <1325000>;
+ opp-microvolt-L0 = <1325000>;
+ opp-microvolt-L1 = <1275000>;
};
opp-1392000000 {
opp-hz = /bits/ 64 <1392000000>;
opp-microvolt = <1375000>;
+ opp-microvolt-L0 = <1375000>;
+ opp-microvolt-L1 = <1325000>;
};
opp-1464000000 {
opp-hz = /bits/ 64 <1464000000>;
opp-microvolt = <1400000>;
+ opp-microvolt-L0 = <1400000>;
+ opp-microvolt-L1 = <1350000>;
};
};
};
diff --git a/arch/arm/boot/dts/rk322x.dtsi b/arch/arm/boot/dts/rk322x.dtsi
index 387c5ee75ad0..cdb9ddcb3f84 100644
--- a/arch/arm/boot/dts/rk322x.dtsi
+++ b/arch/arm/boot/dts/rk322x.dtsi
@@ -105,30 +105,46 @@
compatible = "operating-points-v2";
opp-shared;
+ clocks = <&cru PLL_APLL>;
+ rockchip,max-volt = <1350000>;
+ rockchip,leakage-voltage-sel = <
+ 1 4 0
+ 5 254 1
+ >;
nvmem-cells = <&cpu_leakage>;
nvmem-cell-names = "cpu_leakage";
opp-408000000 {
opp-hz = /bits/ 64 <408000000>;
opp-microvolt = <950000>;
+ opp-microvolt-L0 = <950000>;
+ opp-microvolt-L1 = <950000>;
clock-latency-ns = <40000>;
opp-suspend;
};
opp-600000000 {
opp-hz = /bits/ 64 <600000000>;
opp-microvolt = <975000>;
+ opp-microvolt-L0 = <975000>;
+ opp-microvolt-L1 = <975000>;
};
opp-816000000 {
opp-hz = /bits/ 64 <816000000>;
opp-microvolt = <1000000>;
+ opp-microvolt-L0 = <1000000>;
+ opp-microvolt-L1 = <1000000>;
};
opp-1008000000 {
opp-hz = /bits/ 64 <1008000000>;
opp-microvolt = <1175000>;
+ opp-microvolt-L0 = <1175000>;
+ opp-microvolt-L1 = <1125000>;
};
opp-1200000000 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <1275000>;
+ opp-microvolt-L0 = <1275000>;
+ opp-microvolt-L1 = <1225000>;
};
};
@@ -178,29 +194,54 @@
dmc_opp_table: dmc-opp-table {
compatible = "operating-points-v2";
+ rockchip,leakage-voltage-sel = <
+ 1 5 0
+ 6 254 1
+ >;
+ nvmem-cells = <&logic_leakage>;
+ nvmem-cell-names = "ddr_leakage";
+
opp-300000000 {
opp-hz = /bits/ 64 <300000000>;
opp-microvolt = <1050000>;
+ opp-microvolt-L0 = <1050000>;
+ opp-microvolt-L1 = <1000000>;
};
opp-400000000 {
opp-hz = /bits/ 64 <400000000>;
opp-microvolt = <1050000>;
+ opp-microvolt-L0 = <1050000>;
+ opp-microvolt-L1 = <1000000>;
};
opp-600000000 {
opp-hz = /bits/ 64 <600000000>;
- opp-microvolt = <1050000>;
+ opp-microvolt = <1100000>;
+ opp-microvolt-L0 = <1100000>;
+ opp-microvolt-L1 = <1050000>;
+ };
+ opp-666000000 {
+ opp-hz = /bits/ 64 <666000000>;
+ opp-microvolt = <1150000>;
+ opp-microvolt-L0 = <1150000>;
+ opp-microvolt-L1 = <1100000>;
};
opp-700000000 {
opp-hz = /bits/ 64 <700000000>;
- opp-microvolt = <1100000>;
+ opp-microvolt = <1150000>;
+ opp-microvolt-L0 = <1150000>;
+ opp-microvolt-L1 = <1100000>;
};
opp-786000000 {
opp-hz = /bits/ 64 <786000000>;
opp-microvolt = <1150000>;
+ opp-microvolt-L0 = <1150000>;
+ opp-microvolt-L1 = <1100000>;
};
opp-800000000 {
opp-hz = /bits/ 64 <800000000>;
opp-microvolt = <1150000>;
+ opp-microvolt-L0 = <1150000>;
+ opp-microvolt-L1 = <1100000>;
};
};
@@ -406,6 +447,9 @@
cpu_leakage: cpu_leakage@17 {
reg = <0x17 0x1>;
};
+ logic_leakage: logic-leakage@19 {
+ reg = <0x19 0x1>;
+ };
};
i2c0: i2c@11050000 {
@@ -686,17 +730,30 @@
gpu_opp_table: opp-table2 {
compatible = "operating-points-v2";
+ rockchip,leakage-voltage-sel = <
+ 1 5 0
+ 6 254 1
+ >;
+ nvmem-cells = <&logic_leakage>;
+ nvmem-cell-names = "gpu_leakage";
+
opp-200000000 {
opp-hz = /bits/ 64 <200000000>;
opp-microvolt = <1050000>;
+ opp-microvolt-L0 = <1050000>;
+ opp-microvolt-L1 = <1000000>;
};
opp-300000000 {
opp-hz = /bits/ 64 <300000000>;
opp-microvolt = <1050000>;
+ opp-microvolt-L0 = <1050000>;
+ opp-microvolt-L1 = <1000000>;
};
opp-500000000 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <1150000>;
+ opp-microvolt-L0 = <1150000>;
+ opp-microvolt-L1 = <1100000>;
};
};