-
Notifications
You must be signed in to change notification settings - Fork 88
Use Mat McGowan's SPI bus arbitration code #30
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
Conversation
… may be because of debug statements?
Use Mat McGowan's SPI bus arbitration code
|
I never tested this branch... and Andy's and Satish's branches were based on this one... which I did test with 100% success. I was recommending Satish's core-common-lib bug-fix/ota-flash-reliability branch as it was the cleanest code and comments. Can you comment on the difference between that and mdma's branch? |
|
Sure @technobly, thanks for asking! Both branches solved the problem in all our internal testing. This code, to me, made more clear the actual problem and solution, but that's perhaps a matter of taste and background, since you thought the opposite. Additionally, the software arbitration solves some problems that interrupt masking does not, as described by Mat here: |
|
Ah... I guess I missed the part where Andy's code and MDMA's code were more significantly different... After looking at MDMA's posts again and his code I'm agreeing with you that it seems like a more natural fix. I would like to test it though to make sure it works as well as Andy's interrupt masking, so I'll do that and report back after I collect enough data. |
|
150 passed the dual curl script with 0 failures. Since they all work the same for this test, it seems that it does then come down to the mutex with code vs. int masking argument. The code mutex does seem to be easier to maintain if the system should change in the future. |
Intended to solve issue https://github.com/spark/core-firmware/issues/233
See lengthy discussion in the Spark community:
https://community.spark.io/t/bug-bounty-ota-flash-reliability-issue/5438