Is it possible to execute an IRQ in EL3 (secure monitor) if IRQ was fired in EL1 context? E.g. I have entered EL1 via spsr_el3 (el1h selected) and after that setup a vector table with vbar_el1. Now, some IRQs I want to execute in EL3 mode. How can I do that?
aarch64 execute IRQ from EL1 in EL3
712 Views Asked by samuzu.pazael At
1
There are 1 best solutions below
Related Questions in ARM64
- How can I tell which part of the code hasn't terminated?
- How can I add a dependency on Siddhi CEP to my pom.xml file?
- how can i use wso2 siddhiQL Cache data?
- siddhi count() returns a value per event, not for a group(or window)
- Can esper/siddhi generate new stream according to the group by?
- How to describe this complex scene by cep?
- How do i separate my siddhimanager based on context?
- New string within Siddhi query expression
- wso2: cep: siddhi: how to make time windows persistent
- Select events with a maximum in a sliding window
Related Questions in BARE-METAL
- How can I tell which part of the code hasn't terminated?
- How can I add a dependency on Siddhi CEP to my pom.xml file?
- how can i use wso2 siddhiQL Cache data?
- siddhi count() returns a value per event, not for a group(or window)
- Can esper/siddhi generate new stream according to the group by?
- How to describe this complex scene by cep?
- How do i separate my siddhimanager based on context?
- New string within Siddhi query expression
- wso2: cep: siddhi: how to make time windows persistent
- Select events with a maximum in a sliding window
Related Questions in IRQ
- How can I tell which part of the code hasn't terminated?
- How can I add a dependency on Siddhi CEP to my pom.xml file?
- how can i use wso2 siddhiQL Cache data?
- siddhi count() returns a value per event, not for a group(or window)
- Can esper/siddhi generate new stream according to the group by?
- How to describe this complex scene by cep?
- How do i separate my siddhimanager based on context?
- New string within Siddhi query expression
- wso2: cep: siddhi: how to make time windows persistent
- Select events with a maximum in a sliding window
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
What you want is called "Physical IRQ Routing", and is controlled via
scr_el3. From the manual:IRQ, bit [1] Physical IRQ Routing. 0b0 When executing at Exception levels below EL3, physical IRQ interrupts are not taken to EL3. When executing at EL3, physical IRQ interrupts are not taken. 0b1 When executing at any Exception level, physical IRQ interrupts are taken to EL3.If you only want to handle some IRQs at EL3 and leave others to EL1, then you can simply handle that in the EL3 exception vector by setting:
spsr_el1tospsr_el3.elr_el1toelr_el3.elr_el3tovbar_el1plus one of0x80/0x280/0x480/0x680depending on the state bits inspsr_el3.spsr_el3 = (spsr_el3 & ~0xf00fff) | 0x3c5. If your architecture has PAN support, you'll also have to checkspsr_el1for theSPANfield, and if that's zero, OR0x400000intospsr_el3.