-
Notifications
You must be signed in to change notification settings - Fork 673
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
the mode to take LCOFI once it's delegated #1800
Comments
The Sscofpmf spec (chapter 20 Priv spec) says (with my added bold highlighting):
And, as is true for all interrupts, the standard *ideleg-based interrupt delegation mechanism applies. |
@gfavor thanks for your reply. The framework limits that all performance counter overflow interrupts can only be handled to one privilege mode, correct? |
If I understand your question correctly ... the RISC-V interrupt/exception delegation mechanism applies equally for all bits in the the *ip/*ie/*ideleg CSRs. So LCOFI can be delegated down to one specific privilege mode and, since all perf cntr overflow interrupts are lumped together into the LCOFI local interrupt, they all get delegated together. |
Once we support Sscofpmf extension, the local counter overflow interrupt should be supported, also it can be delegated to S-mode and VS-mode. For hardware implementation, the S-mode and VS-mode accessiable CSRs hpmcounter and hpmevent are shadow of mhpmcounter and mhpmevent, then it's not clear describe how should the interrupt be raised/taken.
1 ) M-mode only or
2) the mode and only the mode according to mideleg/hideleg or
3) each hpmcounter/hpmevent can be assigned to a privilege and LCOFIP should be handled by mode that the counter/event associated.
Thanks,
Steven-Li
The text was updated successfully, but these errors were encountered: