-
Notifications
You must be signed in to change notification settings - Fork 1.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
arm/isr: move up_set_interrupt_context() to chip define #14959
base: master
Are you sure you want to change the base?
Conversation
[Experimental Bot, please feedback here] No, this PR does not fully meet the NuttX requirements. While it provides a summary of the change and testing information, it lacks crucial details. Here's what's missing:
In short, the PR needs to be significantly more detailed and address all the required points in the template to be considered complete. |
@@ -244,6 +244,12 @@ static inline_function bool up_interrupt_context(void) | |||
#endif | |||
} | |||
|
|||
noinstrument_function | |||
static inline_function void up_set_interrupt_context(bool flag) |
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.
but why move arch internal function to public header file? let's change to arm_set_interrupt_context and keep in arm_internal.h
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.
- up_set_interrupt_context()/up_interrupt_context() are pair functions. It is easier to read if they are defined in the same file place.
- up_set_interrupt_context() is implemented differently on each micro-architecture
a. cortex-a/r uses TPIDRPRW
b. cortex-m uses ipsr, and this architecture does not need to implement up_set_interrupt_context()
c. The classic arm architecture and variant architecture tlsr use the legacy global variable g_interrupt_context
The implementation on each variant architecture is different, why is it defined in the common file?
up_set_interrupt_context() is chip specific implement, move this function to correct place Signed-off-by: chao an <[email protected]>
Summary
arm/isr: move up_set_interrupt_context() to chip define
up_set_interrupt_context() is chip specific implement, move this function to correct place
Signed-off-by: chao an [email protected]
Impact
N/A
Testing
ci-check