-
Notifications
You must be signed in to change notification settings - Fork 49
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
How should non-normative text be specified in CLIC spec #376
Comments
This is the preemptible example so it does need to enable mstatus.mie to allow higher level interrupts to preempt. I think the beqz is then really just error checking if the interrupt was retracted or an shv interrupt showed up.
with But it is just non-normative text so isn't too important. Would you like me to add a comment that we could avoid the beqz? |
I didn't think about the shv interrupt. That's actually a good point. On the other hand, if the shv interrupt is at the same level, it shouldn't really preempt a running non-shv interrupt, should it? It would be allowed, as the handler is yielding its priority free willingly, but it's not in the spirit of the levels and prios. So I think we could replace
you mean non-normative? Actually, what defines that something is normative or non-normative? |
sorry. yes, non-normative. I corrected my comment above. good point about moving to an appendix |
I see both AIA and priv spec use inline commentary in italics to specify non-normative text. No spec change is required, just noting that chapter 11 (interrupt handling software through Chapter 17 CLIC interrupt ID ordering recommendations) all should be in an appendix/inline commentary. I'll add a label of spec formatting to this issue that can be resolved during ratification phase but not gate freeze. Do you agree? |
totally fine |
In the section "Trampoline for Preemptible Inline Handlers":
as part of irq_enter, the following check is performed.
csrrsi a0, mnxti, MIE # Get highest interrupt, enable interrupts.
beqz a0, exit
Two questions:
The text was updated successfully, but these errors were encountered: