-
Notifications
You must be signed in to change notification settings - Fork 215
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
async gpio fixes #537
async gpio fixes #537
Conversation
No more misfires, thanks! |
One thing, though, regarding the implementation: what do you think about clearing status after the loop, instead of every iteration? It's unlikely that multiple GPIOs interrupt at the same time, but it's still probably enough to clear the status registers once at the end - we have the bit patterns to do this. |
28ac7a4
to
39c373b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
39c373b
to
68f3923
Compare
Don't merge yet, sorry I've realised this might not be correct. |
- Fix pin number calculation for bank1 - Clear interrupt status after disabling interrupt to avoid hardware pending another interrupt - Clear interrupt status per pin when we create the input future
68f3923
to
6853aac
Compare
I had a last-second wobble as @bugadani pointed out a possible logical error. However, in practice the hardware (at least on C3/S3) will clear the gpio interrupt status bit when |
* async gpio fixes - Fix pin number calculation for bank1 - Clear interrupt status after disabling interrupt to avoid hardware pending another interrupt - Clear interrupt status per pin when we create the input future * add changelog item
* async gpio fixes - Fix pin number calculation for bank1 - Clear interrupt status after disabling interrupt to avoid hardware pending another interrupt - Clear interrupt status per pin when we create the input future * add changelog item
InputFuture
creation.Close #535