mirror of
https://github.com/apache/nuttx.git
synced 2026-10-08 06:45:19 +00:00
The always-on timer has an alarm comparator, but the RTC driver did not use it: rp23xx_rtc.c implemented only up_rtc_initialize(), up_rtc_time() and up_rtc_settime(). Add the alarm and an RTC lower half for /dev/rtc0: - rp23xx_rtc_setalarm(), rp23xx_rtc_cancelalarm() and rp23xx_rtc_rdalarm() on the ALARM_TIME registers and the POWMAN timer interrupt. - An RTC lower half with rdtime, settime, setalarm, setrelative, cancelalarm and rdalarm, registered by the common board bringup. The comparator asserts while the time is past the alarm time, not on a transition. So the interrupt handler disables the alarm before it does anything else; clearing only the status makes the interrupt repeat. The arming sequence is the one of powman_timer_enable_alarm_at_ms() in the Pico SDK. Assisted-by: Claude Code:claude-opus-5-5 Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com> |
||
|---|---|---|
| .. | ||
| include | ||
| src | ||
| CMakeLists.txt | ||
| Kconfig | ||