-
Notifications
You must be signed in to change notification settings - Fork 5.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
watchdog: Add Broadcom BCM2711 watchdog timer driver #5664
base: rpi-6.1.y
Are you sure you want to change the base?
Conversation
This adds a driver for watchdog timer hardware present on Broadcom BCM2711 and BCM2712 SoC, used in Raspberry Pi 4 and 5 devices. While the existing BCM2835 driver does work on these parts, the new peripheral increases the maximum timeout from ~15s to ~159s which can be useful. Signed-off-by: Dom Cobley <[email protected]>
Signed-off-by: Dom Cobley <[email protected]>
Signed-off-by: Dom Cobley <[email protected]>
This is for comments. It's a little ugly how this goes through the existing pm driver. Rather than a separate watchdog driver, I wonder if it may be better to merge them, |
What do you think is the purpose of the interlinking? Is there anything stopping us instantiating the WDT directly from DT? |
It looks like the main reason is power ( But I don't see any locking wrapper, that would mean this design was necessary. But perhaps it's considered more correct. But main reason is upstream chose this implementation, and following their pattern seems wise. |
In case maximum timeout is the only reason, there is a fix for the bcm2835_wdt which let the kernel take care of keeping alive for longer timeouts: |
@lategoodbye thank - that is interesting. The limited watchdog duration is the main reason for considering this driver switch. I guess you patch may get an earlier (15s) than expected watchdog reboot if the core watchdog code dies, but that's probably a pretty fatal situation anyway, so a reset isn't unreasonable. |
This adds a driver for watchdog timer hardware present on Broadcom BCM2711
and BCM2712 SoC, used in Raspberry Pi 4 and 5 devices.
While the existing BCM2835 driver does work on these parts,
the new peripheral increases the maximum timeout from ~15s
to ~159s which can be useful.