This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

how to trace unexpected fiq source?

since the processor been powered up with EL3, AARCH64,

its pc jump to vector table fiq(offset 0x200)

but no outter interrupt signal was set,

  • how could I trace the interrupt source?
  • is there any possible for an instruction error to cause fiq?

even though this fault could be neglected by setting DAIF[1:0] as 2'b11,

what I need is finding out the cause.

thanks.

  • rectify: its pc jump to vector table fiq(offset 0x300)

  • Things I would check:

    • ELR_ELx and SPSR_ELx (where ELx is the current EL), this will tell you where you came from
    • ISR_EL1, this tells you if the FIQ input is being asserted - which we assume it is, but useful to double check.
    • ICC_HPPIR0_EL1 and/or ICC_HPPIR1_EL1 - if the FIQ came from the GIC (likely), which interrupt does the GIC think its sending you.

    Note, setting the PSTATE.I/F masks will not mask the exception if it's routed to a higher Exception level.  For example, EL1 cannot mask interrupts if those interrupts are routed to EL2 or EL3.