Skip to content
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

Question regarding mvip[9] #62

Open
gzaitd opened this issue Jan 31, 2024 · 2 comments
Open

Question regarding mvip[9] #62

gzaitd opened this issue Jan 31, 2024 · 2 comments

Comments

@gzaitd
Copy link

gzaitd commented Jan 31, 2024

  1. Start with deleg[9]=0 mvien[9]=1
  2. An interrupt is delivered to S mode through setting mvip[9]=1
  3. Spec says mvip is independent writeable bit of mip[9] and mip[9] is readonly and comes purely from IMSIC
  4. We move to deleg[9]=1, mvien[9]=1
  5. Now, should mip[9] see the '1' delivered in step 2 ?
@jhauser-us
Copy link
Collaborator

There is no register named deleg. Did you mean mideleg?

@vithursons
Copy link

vithursons commented Mar 24, 2024

assuming deleg is mideleg , 5 is wrong.
assume reg_seip is software writable bit of mip[9] and sig_seip as plic/aplic/imsic supervisor interrupt signal

mvien[9] mideleg[9] mip[9] sip[9] mvip[9]
0 0 sig_meip | reg_seip read only 0 reg_seip
0 1 sig_meip | reg_seip sig_meip | reg _seip reg_seip
1 0 sig_meip reg_seip (or mvip[9]) reg_seip
1 1 sig_meip sig_meip reg_seip

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants