-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Samr30/gpio: Erasing then write mux can generate spurious IRQ #19993
Comments
Sorry for the long delay @biboc I tried to reproduce it on my SAMR21-XPRO and SAML21-XPRO (don't have SAMR30). I kinda reproduce it because my hand touch to EXT1 connector where the PA06 is located triggering unexpected IRQs. Setting a pull-down with the PA06 IRQ seems to fix it. Otherwise I was not able to reproduce any spurious IRQ after flashing your code snippet (and nothing else) to these boards (and make sure I was far away this time...) Does it help to disable the mux configuration for your pin before modifying it ? like:
|
Description
Erasing then write mux can generate spurious IRQ from another gpio sharing same extint
Steps to reproduce the issue
Example with PA6 and PB22 which share extint[6]:
This code triggers some time (maybe 2sec, maybe 20sec) an IRQ on PA6!
I can confirm that the line PA6 stays to always 0 so there should not be any IRQ
I suggest to change https:/RIOT-OS/RIOT/blob/2023.10-branch/cpu/sam0_common/periph/gpio.c#L147
by
Expected results
Set the mux without trigger an interrupt
Actual results
Trigger non desired interrupt
Versions
RIOT 2023-07
The text was updated successfully, but these errors were encountered: