Hi, I am new to ARM architecture and as of now exploring GIC Controller GIC-400 and using ARM Cortex a57.
Sorry for asking very fundamental flow of interrupts handling GIC-Virtual extension
Let assume a physical interrupts acknowledged by hypervisor in EL2 , then it injects the virtual interrupt to VM by writting List registers in virtual CPU interface.
Then hypervisor writes GICC_EOIR register for priority drop (my question : what does priority drop means ? does interrupt controllers stops firing further interrupts ?)
Hypervisor returns from isr, than VM triggered with IRQ handler (my question : does processor has seperate vIRQ line inside ? how does GIC takes processor to EL1 IRQ handler when List registers are updated ? )
and VM has to acknowledge interrupt by reading GICV_IAR to change state of interrupt in GICV_IAR register.
what are the next flow ? should VM end the interrupt (GICV_EOIR) and also deactivate (GICV_DIR) ? should also hypervisor implement GICC_DIR to deactivate interrupt ?
View all questions in Cortex-A / A-Profile forum