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 <pali@xxxxxxxxxx> May I ask who can take this 3/3 patch? powersupply or powerpc tree? > --- > 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 >