Message ID | 20190404135736.8491-2-peron.clem@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/2] dt-bindings: watchdog: sunxi: Add H6 compatible | expand |
On Thu, Apr 04, 2019 at 03:57:36PM +0200, Clément Péron wrote: > Allwinner H6 has a watchog compatible with A31. > > Declare it in the device tree. > > Signed-off-by: Clément Péron <peron.clem@gmail.com> Applied both, thanks! Maxime -- Maxime Ripard, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
On Fri, Apr 5, 2019 at 5:02 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > On Thu, Apr 04, 2019 at 03:57:36PM +0200, Clément Péron wrote: > > Allwinner H6 has a watchog compatible with A31. > > > > Declare it in the device tree. > > > > Signed-off-by: Clément Péron <peron.clem@gmail.com> > > Applied both, thanks! > Maxime IIRC there are 3 watchdogs on the H6. One is the trusted watchdog, which should be reserved for underlying firmware. The other two are the normal and R-block watchdog. Although they look the same, the "normal" one can't reset the system. :( That one is actually the one ATF currently uses. So reboot doesn't work on the H6. ChenYu
On Fri, Apr 05, 2019 at 10:35:08PM +0800, Chen-Yu Tsai wrote: > On Fri, Apr 5, 2019 at 5:02 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > On Thu, Apr 04, 2019 at 03:57:36PM +0200, Clément Péron wrote: > > > Allwinner H6 has a watchog compatible with A31. > > > > > > Declare it in the device tree. > > > > > > Signed-off-by: Clément Péron <peron.clem@gmail.com> > > > > Applied both, thanks! > > Maxime > > IIRC there are 3 watchdogs on the H6. One is the trusted watchdog, > which should be reserved for underlying firmware. > > The other two are the normal and R-block watchdog. Although they > look the same, the "normal" one can't reset the system. :( > That one is actually the one ATF currently uses. So reboot doesn't > work on the H6. So that patch will not do anything then? Maxime -- Maxime Ripard, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
On Fri, Apr 5, 2019 at 10:50 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > On Fri, Apr 05, 2019 at 10:35:08PM +0800, Chen-Yu Tsai wrote: > > On Fri, Apr 5, 2019 at 5:02 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > > > On Thu, Apr 04, 2019 at 03:57:36PM +0200, Clément Péron wrote: > > > > Allwinner H6 has a watchog compatible with A31. > > > > > > > > Declare it in the device tree. > > > > > > > > Signed-off-by: Clément Péron <peron.clem@gmail.com> > > > > > > Applied both, thanks! > > > Maxime > > > > IIRC there are 3 watchdogs on the H6. One is the trusted watchdog, > > which should be reserved for underlying firmware. > > > > The other two are the normal and R-block watchdog. Although they > > look the same, the "normal" one can't reset the system. :( > > That one is actually the one ATF currently uses. So reboot doesn't > > work on the H6. > > So that patch will not do anything then? I'm still on vacation, so I haven't checked the address of the new device. If it's the normal one, then yeah, it won't do anything. I've tried that. IIRC Samuel (or someone else) on IRC also mentioned this. ChenYu
On Fri, Apr 05, 2019 at 10:59:35PM +0800, Chen-Yu Tsai wrote: > On Fri, Apr 5, 2019 at 10:50 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > On Fri, Apr 05, 2019 at 10:35:08PM +0800, Chen-Yu Tsai wrote: > > > On Fri, Apr 5, 2019 at 5:02 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > > > > > On Thu, Apr 04, 2019 at 03:57:36PM +0200, Clément Péron wrote: > > > > > Allwinner H6 has a watchog compatible with A31. > > > > > > > > > > Declare it in the device tree. > > > > > > > > > > Signed-off-by: Clément Péron <peron.clem@gmail.com> > > > > > > > > Applied both, thanks! > > > > Maxime > > > > > > IIRC there are 3 watchdogs on the H6. One is the trusted watchdog, > > > which should be reserved for underlying firmware. > > > > > > The other two are the normal and R-block watchdog. Although they > > > look the same, the "normal" one can't reset the system. :( > > > That one is actually the one ATF currently uses. So reboot doesn't > > > work on the H6. > > > > So that patch will not do anything then? > > I'm still on vacation, so I haven't checked the address of the new device. > If it's the normal one, then yeah, it won't do anything. I've tried that. > IIRC Samuel (or someone else) on IRC also mentioned this. It's the one in the timer that we've used since pretty much day 1 on older SoCs, so I guess it qualifies as the normal one :) Maxime -- Maxime Ripard, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
Hi, On Fri, 5 Apr 2019 at 17:08, Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > On Fri, Apr 05, 2019 at 10:59:35PM +0800, Chen-Yu Tsai wrote: > > On Fri, Apr 5, 2019 at 10:50 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > > > On Fri, Apr 05, 2019 at 10:35:08PM +0800, Chen-Yu Tsai wrote: > > > > On Fri, Apr 5, 2019 at 5:02 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > > > > > > > On Thu, Apr 04, 2019 at 03:57:36PM +0200, Clément Péron wrote: > > > > > > Allwinner H6 has a watchog compatible with A31. > > > > > > > > > > > > Declare it in the device tree. > > > > > > > > > > > > Signed-off-by: Clément Péron <peron.clem@gmail.com> > > > > > > > > > > Applied both, thanks! > > > > > Maxime > > > > > > > > IIRC there are 3 watchdogs on the H6. One is the trusted watchdog, > > > > which should be reserved for underlying firmware. > > > > > > > > The other two are the normal and R-block watchdog. Although they > > > > look the same, the "normal" one can't reset the system. :( > > > > That one is actually the one ATF currently uses. So reboot doesn't > > > > work on the H6. Some users report that the reboot on the PineH64 actually works. Clement > > > > > > So that patch will not do anything then? > > > > I'm still on vacation, so I haven't checked the address of the new device. > > If it's the normal one, then yeah, it won't do anything. I've tried that. > > IIRC Samuel (or someone else) on IRC also mentioned this. > > It's the one in the timer that we've used since pretty much day 1 on > older SoCs, so I guess it qualifies as the normal one :) > > Maxime > > -- > Maxime Ripard, Bootlin > Embedded Linux and Kernel engineering > https://bootlin.com
Hi, On Fri, 5 Apr 2019 at 18:24, Clément Péron <peron.clem@gmail.com> wrote: > > Hi, > > On Fri, 5 Apr 2019 at 17:08, Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > On Fri, Apr 05, 2019 at 10:59:35PM +0800, Chen-Yu Tsai wrote: > > > On Fri, Apr 5, 2019 at 10:50 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > > > > > On Fri, Apr 05, 2019 at 10:35:08PM +0800, Chen-Yu Tsai wrote: > > > > > On Fri, Apr 5, 2019 at 5:02 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > > > > > > > > > On Thu, Apr 04, 2019 at 03:57:36PM +0200, Clément Péron wrote: > > > > > > > Allwinner H6 has a watchog compatible with A31. > > > > > > > > > > > > > > Declare it in the device tree. > > > > > > > > > > > > > > Signed-off-by: Clément Péron <peron.clem@gmail.com> > > > > > > > > > > > > Applied both, thanks! > > > > > > Maxime > > > > > > > > > > IIRC there are 3 watchdogs on the H6. One is the trusted watchdog, > > > > > which should be reserved for underlying firmware. > > > > > > > > > > The other two are the normal and R-block watchdog. Although they > > > > > look the same, the "normal" one can't reset the system. :( > > > > > That one is actually the one ATF currently uses. So reboot doesn't > > > > > work on the H6. > > Some users report that the reboot on the PineH64 actually works. > > Clement > > > > > > > > > So that patch will not do anything then? Did some test and only interrupts are working right now. If the WDOG is configured to make the board reboot the system will be stuck :S Maybe better to disabled it for now and leave a comment. I will try to ask some Pine H64 users to do the same tests. Test done on my Beelink GS1 : /* This should reset the system after 0.5s */ # devmem $((0x030090a0 + 0x0014)) 0x00000001 # devmem $((0x030090a0 + 0x0018)) 0x00000000 # devmem $((0x030090a0 + 0x0018)) 32 0x1 # /* System is Stuck*/ /* This should reset the system after 1s */ # devmem $((0x030090a0 + 0x0014)) 0x00000001 # devmem $((0x030090a0 + 0x0018)) 0x00000000 # devmem $((0x030090a0 + 0x0018)) 32 $((0x1 << 4 | 0x1)) # /* System is Stuck*/ /* This should reset the system after 1s (as recommended in the User Manual) */ # devmem $((0x030090a0 + 0x0014)) 0x00000001 # devmem $((0x030090a0 + 0x0018)) 0x00000000 # devmem $((0x030090a0 + 0x0018)) 32 $((0x1 << 4)) # devmem $((0x030090a0 + 0x0018)) 0x00000010 # devmem $((0x030090a0 + 0x0018)) 32 $((0x1 << 4 | 0x1)) # /* System is Stuck*/ /* This should trig an interrupt after 0.5s */ # devmem $((0x030090a0 + 0x0014)) 32 0x32 # devmem $((0x030090a0 + 0x0014)) 0x00000002 # devmem $((0x030090a0 + 0x0018)) 0x00000000 # devmem $((0x030090a0 + 0x0018)) 32 $((0x1 << 4 | 0x1)) # devmem $((0x030090a0 + 0x0004)) 0x00000001 /* INT is triggered */ Regards, Clement > > > > > > I'm still on vacation, so I haven't checked the address of the new device. > > > If it's the normal one, then yeah, it won't do anything. I've tried that. > > > IIRC Samuel (or someone else) on IRC also mentioned this. > > > > It's the one in the timer that we've used since pretty much day 1 on > > older SoCs, so I guess it qualifies as the normal one :) > > > > Maxime > > > > -- > > Maxime Ripard, Bootlin > > Embedded Linux and Kernel engineering > > https://bootlin.com
On Sun, Apr 07, 2019 at 04:27:36PM +0200, Clément Péron wrote: > Hi, > > On Fri, 5 Apr 2019 at 18:24, Clément Péron <peron.clem@gmail.com> wrote: > > > > Hi, > > > > On Fri, 5 Apr 2019 at 17:08, Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > > > On Fri, Apr 05, 2019 at 10:59:35PM +0800, Chen-Yu Tsai wrote: > > > > On Fri, Apr 5, 2019 at 10:50 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > > > > > > > On Fri, Apr 05, 2019 at 10:35:08PM +0800, Chen-Yu Tsai wrote: > > > > > > On Fri, Apr 5, 2019 at 5:02 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > > > > > > > > > > > On Thu, Apr 04, 2019 at 03:57:36PM +0200, Clément Péron wrote: > > > > > > > > Allwinner H6 has a watchog compatible with A31. > > > > > > > > > > > > > > > > Declare it in the device tree. > > > > > > > > > > > > > > > > Signed-off-by: Clément Péron <peron.clem@gmail.com> > > > > > > > > > > > > > > Applied both, thanks! > > > > > > > Maxime > > > > > > > > > > > > IIRC there are 3 watchdogs on the H6. One is the trusted watchdog, > > > > > > which should be reserved for underlying firmware. > > > > > > > > > > > > The other two are the normal and R-block watchdog. Although they > > > > > > look the same, the "normal" one can't reset the system. :( > > > > > > That one is actually the one ATF currently uses. So reboot doesn't > > > > > > work on the H6. > > > > Some users report that the reboot on the PineH64 actually works. > > > > Clement > > > > > > > > > > > > So that patch will not do anything then? > > Did some test and only interrupts are working right now. If the WDOG > is configured to make the board reboot the system will be stuck :S > Maybe better to disabled it for now and leave a comment. I dropped the two patches Maxime -- Maxime Ripard, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
On Mon, 8 Apr 2019 at 10:16, Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > On Sun, Apr 07, 2019 at 04:27:36PM +0200, Clément Péron wrote: > > Hi, > > > > On Fri, 5 Apr 2019 at 18:24, Clément Péron <peron.clem@gmail.com> wrote: > > > > > > Hi, > > > > > > On Fri, 5 Apr 2019 at 17:08, Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > > > > > On Fri, Apr 05, 2019 at 10:59:35PM +0800, Chen-Yu Tsai wrote: > > > > > On Fri, Apr 5, 2019 at 10:50 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > > > > > > > > > On Fri, Apr 05, 2019 at 10:35:08PM +0800, Chen-Yu Tsai wrote: > > > > > > > On Fri, Apr 5, 2019 at 5:02 PM Maxime Ripard <maxime.ripard@bootlin.com> wrote: > > > > > > > > > > > > > > > > On Thu, Apr 04, 2019 at 03:57:36PM +0200, Clément Péron wrote: > > > > > > > > > Allwinner H6 has a watchog compatible with A31. > > > > > > > > > > > > > > > > > > Declare it in the device tree. > > > > > > > > > > > > > > > > > > Signed-off-by: Clément Péron <peron.clem@gmail.com> > > > > > > > > > > > > > > > > Applied both, thanks! > > > > > > > > Maxime > > > > > > > > > > > > > > IIRC there are 3 watchdogs on the H6. One is the trusted watchdog, > > > > > > > which should be reserved for underlying firmware. > > > > > > > > > > > > > > The other two are the normal and R-block watchdog. Although they > > > > > > > look the same, the "normal" one can't reset the system. :( > > > > > > > That one is actually the one ATF currently uses. So reboot doesn't > > > > > > > work on the H6. > > > > > > Some users report that the reboot on the PineH64 actually works. > > > > > > Clement > > > > > > > > > > > > > > > So that patch will not do anything then? > > > > Did some test and only interrupts are working right now. If the WDOG > > is configured to make the board reboot the system will be stuck :S > > Maybe better to disabled it for now and leave a comment. > > I dropped the two patches What do you think about having it but disabled with a comment ? I have tested the r_watchdog and this one is functionnal. Clement > > Maxime > > -- > Maxime Ripard, Bootlin > Embedded Linux and Kernel engineering > https://bootlin.com
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi index bc5dc44171b7..3c2d6d0538b7 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi @@ -203,6 +203,12 @@ #reset-cells = <1>; }; + watchdog@30090a0 { + compatible = "allwinner,sun50i-h6-wdt","allwinner,sun6i-a31-wdt"; + reg = <0x030090a0 0x20>; + interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; + }; + pio: pinctrl@300b000 { compatible = "allwinner,sun50i-h6-pinctrl"; reg = <0x0300b000 0x400>;
Allwinner H6 has a watchog compatible with A31. Declare it in the device tree. Signed-off-by: Clément Péron <peron.clem@gmail.com> --- arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 6 ++++++ 1 file changed, 6 insertions(+)