The CM4 can only reset itself but not the System, that has something to do with the security of PSoC 6 (CM4 is the Application processor, CM0+ the Host Processor).
That said, there is a way to reset the MCU by your application using a System Call through the IPC. Please have a look at the PSoC 6 Architecture Guide as reference. https://www.cypress.com/file/385621/download chapter "12.5.10 Soft Reset" on page 108.
Is it architecture related functionality that CM4 is application processor & CM0+ is a Host processor than It should not be work every time.
Surprisingly from yesterday, I am able to reset the system from CM4 which was not possible 2-3 days ago.
Can someone help me to know why now it's working?
Have you ever made any change before the cm4 is effective to assert system reset?
No, I did not make any changes to the firmware,
I am not getting this can someone give me a clear idea ?
I made a test over this issue.
Either cm4 or cm0+ can assert a system reset through calling NVIC_SystemReset().
cm0+ can assert cm4 reset through calling Cy_SysLib_SoftResetCM4(), only on the condition that cm4 is under Deep Sleep mode.
From the test result, it looks cm4 can not assert reset of itself without system reset.
Thanks, Wang for resolving this confusion.