nuttx/arch/arm
Marco Casaroli d3e856c56e arch/arm/rp23xx: Add RTC alarm support on the POWMAN always-on timer.
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>
2026-10-07 16:22:56 -03:00
..
include arch/arm/imxrt: ROM api support 2026-10-07 08:20:12 -03:00
src arch/arm/rp23xx: Add RTC alarm support on the POWMAN always-on timer. 2026-10-07 16:22:56 -03:00
CMakeLists.txt
Kconfig arch/arm/ra8m1: Add DTC and per-instance SCI FIFO/DTC/termios support 2026-10-06 16:56:58 -03:00