From 3f56d94d076ac862028132cb5c67bbaa86974ac3 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Sun, 30 Dec 2018 15:41:47 +0100 Subject: arm: dts: refine voltage for RK3399 when overclocking The build runs fine on little cores at 1608 with 1175,1175,1200 and L3 at 1100,1100,1200. Thus let's slightly lower the voltage for 1512 by 25mV and keep this one for 1608. However it was noticed that it's not stable at 1704 MHz under 1250 mV, works fine at 1275mV unless the big cores work in parallel, hence the 1300 mV setting. Next freqs get increasing 50mV per 48 MHz for core/L0/L1 with a 25mV difference with L2, and keep L3 at 1200mV. The big cores at 2.0-2.2 GHz were increased by 25-50mV to try to improve stability. At least now it is possible to build at 4*1.704+2*2.208 GHz till 85 degrees. --- arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi | 89 ++++++++++++++++++++-------- 1 file changed, 64 insertions(+), 25 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi index 483ec24..0d16c7a 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi @@ -123,15 +123,25 @@ }; opp-1512000000 { opp-hz = /bits/ 64 <1512000000>; + opp-microvolt = <1150000 1150000 1200000>; + opp-microvolt-L0 = <1150000 1150000 1200000>; + opp-microvolt-L1 = <1125000 1125000 1200000>; + opp-microvolt-L2 = <1100000 1100000 1200000>; + opp-microvolt-L3 = <1075000 1075000 1200000>; + clock-latency-ns = <40000>; + }; + opp-1608000000 { + opp-hz = /bits/ 64 <1608000000>; opp-microvolt = <1175000 1175000 1200000>; opp-microvolt-L0 = <1175000 1175000 1200000>; opp-microvolt-L1 = <1150000 1150000 1200000>; opp-microvolt-L2 = <1125000 1125000 1200000>; opp-microvolt-L3 = <1100000 1100000 1200000>; clock-latency-ns = <40000>; + turbo-mode; }; - opp-1608000000 { - opp-hz = /bits/ 64 <1608000000>; + opp-1656000000 { + opp-hz = /bits/ 64 <1656000000>; opp-microvolt = <1225000 1225000 1225000>; opp-microvolt-L0 = <1225000 1225000 1225000>; opp-microvolt-L1 = <1200000 1200000 1200000>; @@ -142,21 +152,31 @@ }; opp-1704000000 { opp-hz = /bits/ 64 <1704000000>; - opp-microvolt = <1250000 1250000 1250000>; - opp-microvolt-L0 = <1250000 1250000 1250000>; - opp-microvolt-L1 = <1250000 1250000 1250000>; - opp-microvolt-L2 = <1225000 1225000 1250000>; - opp-microvolt-L3 = <1200000 1200000 1200000>; + opp-microvolt = <1300000 1300000 1300000>; + opp-microvolt-L0 = <1300000 1300000 1300000>; + opp-microvolt-L1 = <1275000 1275000 1275000>; + opp-microvolt-L2 = <1250000 1250000 1250000>; + opp-microvolt-L3 = <1225000 1225000 1225000>; + clock-latency-ns = <40000>; + turbo-mode; + }; + opp-1752000000 { + opp-hz = /bits/ 64 <1752000000>; + opp-microvolt = <1325000 1325000 1325000>; + opp-microvolt-L0 = <1325000 1325000 1325000>; + opp-microvolt-L1 = <1300000 1300000 1300000>; + opp-microvolt-L2 = <1275000 1275000 1275000>; + opp-microvolt-L3 = <1250000 1250000 1250000>; clock-latency-ns = <40000>; turbo-mode; }; opp-1800000000 { opp-hz = /bits/ 64 <1800000000>; - opp-microvolt = <1275000 1275000 1275000>; - opp-microvolt-L0 = <1275000 1275000 1275000>; - opp-microvolt-L1 = <1275000 1275000 1275000>; - opp-microvolt-L2 = <1250000 1250000 1250000>; - opp-microvolt-L3 = <1225000 1225000 1225000>; + opp-microvolt = <1350000 1350000 1350000>; + opp-microvolt-L0 = <1350000 1350000 1350000>; + opp-microvolt-L1 = <1325000 1325000 1325000>; + opp-microvolt-L2 = <1300000 1300000 1300000>; + opp-microvolt-L3 = <1275000 1275000 1275000>; clock-latency-ns = <40000>; turbo-mode; }; @@ -267,33 +287,52 @@ opp-microvolt-L3 = <1175000 1175000 1200000>; clock-latency-ns = <40000>; }; + opp-2016000000 { + opp-hz = /bits/ 64 <2016000000>; + opp-microvolt = <1250000 1250000 1250000>; + opp-microvolt-L0 = <1250000 1250000 1250000>; + opp-microvolt-L1 = <1225000 1225000 1250000>; + opp-microvolt-L2 = <1200000 1200000 1250000>; + opp-microvolt-L3 = <1175000 1175000 1200000>; + clock-latency-ns = <40000>; + }; opp-2088000000 { opp-hz = /bits/ 64 <2088000000>; - opp-microvolt = <1275000 1275000 1275000>; - opp-microvolt-L0 = <1275000 1275000 1275000>; - opp-microvolt-L1 = <1275000 1275000 1275000>; - opp-microvolt-L2 = <1275000 1275000 1275000>; + opp-microvolt = <1300000 1300000 1300000>; + opp-microvolt-L0 = <1300000 1300000 1300000>; + opp-microvolt-L1 = <1275000 1275000 1300000>; + opp-microvolt-L2 = <1250000 1250000 1300000>; + opp-microvolt-L3 = <1225000 1225000 1250000>; + clock-latency-ns = <40000>; + turbo-mode; + }; + opp-2112000000 { + opp-hz = /bits/ 64 <2112000000>; + opp-microvolt = <1325000 1325000 1325000>; + opp-microvolt-L0 = <1325000 1325000 1325000>; + opp-microvolt-L1 = <1200000 1200000 1300000>; + opp-microvolt-L2 = <1275000 1275000 1300000>; opp-microvolt-L3 = <1250000 1250000 1250000>; clock-latency-ns = <40000>; turbo-mode; }; opp-2184000000 { opp-hz = /bits/ 64 <2184000000>; - opp-microvolt = <1300000 1300000 1300000>; - opp-microvolt-L0 = <1300000 1300000 1300000>; - opp-microvolt-L1 = <1300000 1300000 1300000>; - opp-microvolt-L2 = <1300000 1300000 1300000>; + opp-microvolt = <1350000 1350000 1350000>; + opp-microvolt-L0 = <1350000 1350000 1350000>; + opp-microvolt-L1 = <1325000 1325000 1325000>; + opp-microvolt-L2 = <1300000 1300000 1325000>; opp-microvolt-L3 = <1275000 1275000 1275000>; clock-latency-ns = <40000>; turbo-mode; }; opp-2208000000 { opp-hz = /bits/ 64 <2208000000>; - opp-microvolt = <1325000 1325000 1325000>; - opp-microvolt-L0 = <1325000 1325000 1325000>; - opp-microvolt-L1 = <1325000 1325000 1325000>; - opp-microvolt-L2 = <1325000 1325000 1325000>; - opp-microvolt-L3 = <1275000 1275000 1275000>; + opp-microvolt = <1350000 1350000 1350000>; + opp-microvolt-L0 = <1350000 1350000 1350000>; + opp-microvolt-L1 = <1350000 1350000 1350000>; + opp-microvolt-L2 = <1325000 1325000 1350000>; + opp-microvolt-L3 = <1300000 1300000 1300000>; clock-latency-ns = <40000>; turbo-mode; }; -- 2.9.0