On 27.09.22 11:54, Rasmus Villemoes wrote:
The fix and explanation is in the first patch, which I hope can make
it into v2022.10, it should be rather uncontroversial.
The second patch may make sense on its own, but is not at all urgent
and can be considered a mere suggestion, but it was convenient for
making the following two patches less intrusive.
While I noticed this on my actual hardware, it's not too hard to
verify the problem in sandbox, which is what patches 2-4 are for.
More precisely, I've tested that with this series (and the stuff added
by the first patch temporarily commented out), building
sandbox64_defconfig modified by setting CONFIG_BOOTDELAY=15 and
CONFIG_AUTOBOOT_KEYED=y, doing
./u-boot -D
works as always (ordinary simple autoboot, getting a prompt after 15
seconds), while with
./u-boot -D --autoboot_keyed
the sandbox gets killed as expected five seconds into the 15 second
countdown. And with the first patch properly applied, this is fixed.
I don't know if this is a good way to test this, or if having that
SIGALRM based watchdog device running always in sandbox can cause
problems for other uses of sandbox. I also won't have time in the near
future for polishing or reworking the test, so consider it mostly
POC.
Regardless, as I wrote above, I do hope the fix itself (1/4) can be
applied soonish.
The rest of these patches:
Applied to u-boot-watchdog/master
Thanks,
Stefan
Rasmus Villemoes (4):
autoboot: make sure watchdog device(s) are handled with keyed autoboot
watchdog: introduce a u-boot,autostart property
sandbox: add SIGALRM-based watchdog device
sandbox.dtsi: add a sandbox,alarm-wdt instance
arch/sandbox/cpu/os.c | 17 +++++
arch/sandbox/dts/sandbox.dtsi | 6 ++
common/autoboot.c | 3 +
configs/sandbox64_defconfig | 2 +
configs/sandbox_defconfig | 2 +
doc/device-tree-bindings/watchdog/common.txt | 9 ++-
drivers/watchdog/Kconfig | 8 ++
drivers/watchdog/Makefile | 1 +
drivers/watchdog/sandbox_alarm-wdt.c | 79 ++++++++++++++++++++
drivers/watchdog/wdt-uclass.c | 15 ++--
include/os.h | 17 +++++
11 files changed, 149 insertions(+), 10 deletions(-)
create mode 100644 drivers/watchdog/sandbox_alarm-wdt.c
Viele Grüße,
Stefan Roese
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: s...@denx.de