On Thu, Nov 28, 2024 at 11:46 PM Philippe Simons <simons.philippe@xxxxxxxxx> wrote: > > My H700 (RG35XX-H, RG40XX-V and RG CubeXX) devices are very unstable, > especially with some OPPs. > Crashes were fairly easy to reproduce with any dynamic cpufreq governor > and some load on CPU, usually in matter of minutes. > Crashes manifested randomly as simply hanging or various kernel oops > > Manufacturer (Anbernic) is using more conservative mircrovolt values, > so let's use these. > While using performance gov seems stables at 1.5Ghz, it still crashes > using a dynamic gov (even with Andre reparenting patch), so let's drop > it for now, like manufacturer does. > > Signed-off-by: Philippe Simons <simons.philippe@xxxxxxxxx > --- > .../dts/allwinner/sun50i-h616-cpu-opp.dtsi | 19 +++++++++---------- > 1 file changed, 9 insertions(+), 10 deletions(-) > > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616-cpu-opp.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616-cpu-opp.dtsi > index dd10aaf47..ac13fe169 100644 > --- a/arch/arm64/boot/dts/allwinner/sun50i-h616-cpu-opp.dtsi > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616-cpu-opp.dtsi > @@ -50,24 +50,21 @@ opp-1008000000 { > opp-microvolt-speed2 = <950000>; > opp-microvolt-speed3 = <950000>; > opp-microvolt-speed4 = <1020000>; > - opp-microvolt-speed5 = <900000>; > + opp-microvolt-speed5 = <950000>; It seems that you are encountering the issues on this particular binning. Could you mention that in the commit message? It's not very obvious that H700 == a particular speed bin of H616. ChenYu > clock-latency-ns = <244144>; /* 8 32k periods */ > opp-supported-hw = <0x3f>; > }; > > opp-1032000000 { > opp-hz = /bits/ 64 <1032000000>; > - opp-microvolt = <900000>; > + opp-microvolt = <950000>; > clock-latency-ns = <244144>; /* 8 32k periods */ > opp-supported-hw = <0x20>; > }; > > opp-1104000000 { > opp-hz = /bits/ 64 <1104000000>; > - opp-microvolt-speed0 = <1000000>; > - opp-microvolt-speed2 = <1000000>; > - opp-microvolt-speed3 = <1000000>; > - opp-microvolt-speed5 = <950000>; > + opp-microvolt = <1000000>; > clock-latency-ns = <244144>; /* 8 32k periods */ > opp-supported-hw = <0x2d>; > }; > @@ -79,7 +76,7 @@ opp-1200000000 { > opp-microvolt-speed2 = <1050000>; > opp-microvolt-speed3 = <1050000>; > opp-microvolt-speed4 = <1100000>; > - opp-microvolt-speed5 = <1020000>; > + opp-microvolt-speed5 = <1050000>; > clock-latency-ns = <244144>; /* 8 32k periods */ > opp-supported-hw = <0x3f>; > }; > @@ -93,7 +90,10 @@ opp-1320000000 { > > opp-1416000000 { > opp-hz = /bits/ 64 <1416000000>; > - opp-microvolt = <1100000>; > + opp-microvolt-speed0 = <1100000>; > + opp-microvolt-speed2 = <1100000>; > + opp-microvolt-speed3 = <1100000>; > + opp-microvolt-speed5 = <1160000>; > clock-latency-ns = <244144>; /* 8 32k periods */ > opp-supported-hw = <0x2d>; > }; > @@ -102,9 +102,8 @@ opp-1512000000 { > opp-hz = /bits/ 64 <1512000000>; > opp-microvolt-speed1 = <1100000>; > opp-microvolt-speed3 = <1100000>; > - opp-microvolt-speed5 = <1160000>; > clock-latency-ns = <244144>; /* 8 32k periods */ > - opp-supported-hw = <0x2a>; > + opp-supported-hw = <0x0a>; > }; > }; > }; > -- > 2.46.1 >