On Thursday 09 February 2023 01:10:21 Pali Rohár wrote:
> On Monday 26 December 2022 12:45:13 Pali Rohár wrote:
> > Due to CPLD firmware bugs, set CPLD syscon-reboot priority level to 64
> > (between rstcr and watchdog) to ensure that rstcr's global-utilities reset
> > method which is preferred stay as default one, and to ensure that CPLD
> > syscon-reboot is more preferred than watchdog reset method.
> > 
> > Fixes: 0531a4abd1c6 ("powerpc: dts: turris1x.dts: Add CPLD reboot node")
> > Signed-off-by: Pali Rohár <p...@kernel.org>
> 
> May I ask who can take this 3/3 patch? powersupply or powerpc tree?

+ Christophe

> > ---
> >  arch/powerpc/boot/dts/turris1x.dts | 23 +++++++++++++++++++++++
> >  1 file changed, 23 insertions(+)
> > 
> > diff --git a/arch/powerpc/boot/dts/turris1x.dts 
> > b/arch/powerpc/boot/dts/turris1x.dts
> > index e9cda34a140e..c9b619f6ed5c 100644
> > --- a/arch/powerpc/boot/dts/turris1x.dts
> > +++ b/arch/powerpc/boot/dts/turris1x.dts
> > @@ -367,11 +367,34 @@
> >                     };
> >  
> >                     reboot@d {
> > +                           /*
> > +                            * CPLD firmware which manages system reset and
> > +                            * watchdog registers has bugs. It does not
> > +                            * autoclear system reset register after change
> > +                            * and watchdog ignores reset line on immediate
> > +                            * succeeding reset cycle triggered by watchdog.
> > +                            * These bugs have to be workarounded in U-Boot
> > +                            * bootloader. So use system reset via syscon as
> > +                            * a last resort because older U-Boot versions
> > +                            * do not have workaround for watchdog.
> > +                            *
> > +                            * Reset method via rstcr's global-utilities
> > +                            * (the preferred one) has priority level 128,
> > +                            * watchdog has priority level 0 and default
> > +                            * syscon-reboot priority level is 192.
> > +                            *
> > +                            * So define syscon-reboot with custom priority
> > +                            * level 64 (between rstcr and watchdog) because
> > +                            * rstcr should stay as default preferred reset
> > +                            * method and reset via watchdog is more broken
> > +                            * than system reset via syscon.
> > +                            */
> >                             compatible = "syscon-reboot";
> >                             reg = <0x0d 0x01>;
> >                             offset = <0x0d>;
> >                             mask = <0x01>;
> >                             value = <0x01>;
> > +                           priority = <64>;
> >                     };
> >  
> >                     led-controller@13 {
> > -- 
> > 2.20.1
> > 

Reply via email to