saml21/gpio: Allow multiple EXTI at the same time#6932
saml21/gpio: Allow multiple EXTI at the same time#6932haukepetersen merged 1 commit intoRIOT-OS:masterfrom
Conversation
Signed-off-by: dylad <[email protected]>
|
After looking at cpu/samd21, I'm wordering if this bug is also present on SAM(R/D)21. edit: typos |
|
I just ran a test using a samd21g18a and two EXTI appeared to work fine with latest master: Let me know if I am missing something or you want me to try something else... |
|
@photonthunder Thanks a lot for testing it ! |
|
@photonthunder BTW, did you notice the call to |
|
@dylad thanks. I was troubleshooting because I couldn't get it to work initially and through those in. I took them out and it was still functional. |
|
@dylad, I have no strong opinion on the change and tend to give an ACK. Maybe other maintainers will have comments ? @haukepetersen ? |
|
verified 2 exti lines simultaneously working on the |
This PR proposes a fix for #6904
To sum up, having one EXTI on saml21 works fine but if you try to enable several exti only the first one works.( all init said it's ok but only the first works)
The problem is any attempt to write into
EIC->CONFIGfailed after EIC is enabled (EIC->CTRLA.reg = EIC_CTRLA_ENABLE;)SAML21 datasheet said that
EIC->CONFIGregisters are protected after EIC is enable. (27.6.2.1. Initialization -> page 473 of saml21 datasheet)Another solution would be (disable EIC at the end of the function, change
EIC->CONFIGreg and re-enable it):Let me know what you think about it.