Open ram2532 opened 2 weeks ago
Hi @ram2532 ,
I don't understand what is being optimized here. A transition to M-mode still needs to happen so that M-mode can switch the context to the interrupted SDID so that the interrupt can be handled. I don't understand the purpose for this delegation.
Consider that SD(1) is running, and suddenly an SD(2)'s interrupt is asserted. The general program flow is:
The delegation of LSDEI can eliminate the step 1 and step 2. Because the delegation makes SD(1) receive LSDEI directly. The M-mode's notification is unnecessary.
Chapter 6 "Smdia: Supervisor Domain Interrupt Assigment" ends with this comment regarding the purpose for delegate LDSEI:
I don't understand what is being optimized here. A transition to M-mode still needs to happen so that M-mode can switch the context to the interrupted SDID so that the interrupt can be handled. I don't understand the purpose for this delegation.
I also think this chapter would benefit from a S/W view of how S/W would use the Smsdia functionality to manage external supervisor interrupts across multiple SDIDs. I infer from the description of the CSRs, that M-mode would need to clear the msdeie bit corresponding to the SDID of the Supervisor context to which it will MRET. I think a description of how M-mode handles these transitions would be helpful.