Implement AON Timer driver for the RP2350 #4950
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I recently needed an RTC, thought that the RP2350 didn't have one, but it actually does and has something that's kind of better (depending on your use case). This is my shot at implementing it.
Changes
AON Timer:
DateTime module:
AON Timer DateTime API:
I did not implement the time driver because the 1ms resolution is too low for a main timer. This works better as a simple "global" clock for waking from dormant (feel free to change my mind on this i'm not 100% convinced)
I also was too lazy to have an example that wakes from dormant state. I'm not sure there is a way to enable dormant state through embassy right now
(tested on actual RP2350 hardware)