-
Notifications
You must be signed in to change notification settings - Fork 6.9k
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
arm: Clear primask during startup for all architecture variants #9865
Conversation
Codecov Report
@@ Coverage Diff @@
## master #9865 +/- ##
=======================================
Coverage 52.28% 52.28%
=======================================
Files 213 213
Lines 25964 25964
Branches 5598 5598
=======================================
Hits 13576 13576
Misses 10150 10150
Partials 2238 2238 Continue to review full report at Codecov.
|
@MaureenHelm, I suppose this PR is in the direction of making the Zephyr image more "standalone", against previously executed boot-loader images. That said, could we enhance this patch to clear even FAULTMASK, in case the boot-loader also left that register set? Since FAULTMASK is only available on v7 architecture (and v8 with Mainline), could we have something like:
@galak would this be better? |
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.
Left a suggestion for improvement
A bootloader may leave primask or faultmask set, so clear them during startup when we enable interrupts and switch to the main thread. Previously we only cleared primask for architecture variants which don't support basepri, but now we do it for all architecture variants. Fixes a failure on mimxrt1050_evk with the latency_measure test and shell_module sample when using an nxp internal bootloader. Signed-off-by: Maureen Helm <[email protected]>
Good idea, done. |
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
A bootloader may leave primask set, so clear it during startup when we
enable interrupts and switch to the main thread. Previously we only did
this for architecture variants which don't support basepri, but now we
do it for all architecture variants.
Fixes a failure on mimxrt1050_evk with the latency_measure test and
shell_module sample when using an nxp internal bootloader.
Signed-off-by: Maureen Helm [email protected]
Fixes #9650
Fixes #9651