Hi @nirmal_masilamani,
So we can probably exclude a stack overflow as the root cause.
However, the task context is still getting corrupted. The processor is restoring LR = 0xA5A5A5A5, which results in a UsageFault. 0xA5A5A5A5 is the pattern generated from tskSTACK_FILL_BYTE (0xA5U) and is used by FreeRTOS to fill task stacks when they are created.

Therefore, if LR becomes 0xA5A5A5A5, the context is restored from a location that still contains the original stack fill pattern rather than a valid register value.
This could happen if the SP gets corrupted. In that case, PendSV_Handler() would restore the task context from a wrong location in RAM.
You should be able to identify the SRAM region from the stack pointer address.
I would recommend that you properly protect the region by MPUs and XRDC.
Also, are any interrupts calling FreeRTOS APIs? If so, are they using the FromISR() variants, and are their priorities configured correctly with respect to configMAX_SYSCALL_INTERRUPT_PRIORITY?
Regards,
Daniel