lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CADomA48EED-yfwdR8O+3Xd0YKzn=QodECfmdiuFUu9YPWn0GdQ@mail.gmail.com>
Date: Tue, 3 Dec 2024 21:24:06 +0100
From: Philippe Simons <simons.philippe@...il.com>
To: wens@...e.org
Cc: Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>, 
	Conor Dooley <conor+dt@...nel.org>, Jernej Skrabec <jernej.skrabec@...il.com>, 
	Samuel Holland <samuel@...lland.org>, 
	"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" <devicetree@...r.kernel.org>, 
	"moderated list:ARM/Allwinner sunXi SoC support" <linux-arm-kernel@...ts.infradead.org>, 
	"open list:ARM/Allwinner sunXi SoC support" <linux-sunxi@...ts.linux.dev>, open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] Update H700 opp values

It seems I was looking at the correct source of instabilities, but
not with the correct solution.

incorrect cpu voltages were indeed causing the crashes but only
because the cpu regulator was missing the property
regulator-ramp-delay. The patch can be discarded, I'll post a new
that adds the missing properties on the regulators.

Philippe

On Fri, Nov 29, 2024 at 6:13 AM Chen-Yu Tsai <wens@...e.org> wrote:
>
> On Thu, Nov 28, 2024 at 11:46 PM Philippe Simons
> <simons.philippe@...il.com> 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@...il.com
> > ---
> >  .../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
> >

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ