Here’s a great reference for interrupts not associated with the RTOS on Cortex M.
Recent versions of FreeRTOS verify that interrupt priorities follow the plan prescribed in the above link. Be sure your project defines configASSERT() so you can benefit from these checks.
If an interrupt won’t fire on CM7, here are some possible explanations:
Interrupts are masked via BASEPRI
The interrupt is not enabled in the interrupt controller (NVIC)
The interrupt is not enabled inside the peripheral
The conditions required by the peripheral to raise the interrupt are not present
For questions related to I2C on your i.MX, you may try NXP’s support forum.