According to both the TRM and the CPU and Instruction Set documentation for this device, EALLOW should be disabled when entering an ISR (at least see Figure 1-94 of SPRUH18G). We have many ISRs that do not call EALLOW, but seem to still be able to write to EALLOW-protected registers, specifically the PieCtrlRegs (but also peripheral specific ones). The only time we've encountered a problem so far is specifically calling EDIS before the end of an interrupt (before writing to the EALLOW-protected registers).
I halted in debug mode within one of these ISRs (the very first line) and EALLOW is indeed enabled, even when we do not call EALLOW.
Why is there a difference between the perceived behavior and the documentation?
Is it just some sort of initialization or configuration we've done that can ignore this protection while in an ISR?
Or set EALLOW to enabled instead of disabled when entering an ISR, or something else?
Thanks!