Hello,
TRM SPNU563A dated March 2018 specifies in chapter §19.5.3 that
Initialization of VIM RAM vector table is only needed in case vectored interrupts are used, and that index interrupt management does not need the table to be initialized.
Based on the TRM and as we planned to use irq index interrupts mode (SCTRL.VE=0) we skipped the RAM VIM init on purpose, and faced a lockstep VIM Bus compare error (ESM 2.25) on first unmasked irq occurence (RTI compare for the first real time tick in our case).
After analysis I noticed that even in case System Control Register SCTLR.VE bit is set to zero, the table is still accessed to update IRQVECREG and FIQVECREG alongside IRQINDEX, which could explain the compare error as VIM RAM table is in unknown state after power on.
It seems to me that register vectored mode is activated in case SCTLR.VE is set to zero, thus leading to access to VIM RAM table to update xxxVECREG regisgters.
Can you please confirm that VIM RAM shall be initialized unconditionnaly to avoid VIM bus compare errors ?
If confirmed the followinglocations might require an update : SPNU563A end of §19.4.2 and §19.5.3
Thanks for your support,
Regards,
Franck.