I want to understand the usage of the HPPIR register (Highest Priority Pending Interrupt Register) better.
To my understanding, HPPIR is supposed to report the value of the currently pending interrupt that is of the highest priority if it passes the Binary Point register.
However, what I don't understand is that is the running priority of the CPU has any effect on the value reported by the HPPIR register?
For e.g. consider the scenario where a higher priority interrupt with priority 0 is already running (active and pending), effectively making the running priority of the CPU 0.
During higher priority interrupt handling a lower priority interrupt with priority 22 arrives. The BPR is set with the value of 0.
In this scenario HPPIR is supposed to report the INTID of lower priority interrupt or a SPURIOUS_INT(1023)?