This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi
I have been trying to get the MCU warm reset to work on the TDA4VM. the register i tried to write to is CTRLMMR_WKUP_MCU_WARM_RST_CTRL
the value of 0x60000 which should reset the R5F on the mcu island. But it does not work. The reason i know it does not work is because the status register that keeps track of warm reset (this is bit 0) does not get set. CTRLMMR_WKUP_RESET_SRC_STAT
I know the register 0x42000a4c ( WKUP_PSC0_MDCTL_y ) can be used to reset the R5F from the DMSC. the problem is that you have to write the following sequence to be able to reset the MCU R5F. This can't be done from the mcu R5F, because you have to disable the reset bit on the register.
0x42000a4c = 0x80000003
0x42000a4c = 0x103 //this disables the reset on the MCU R5F.
I like to reset the mcu R5F with writing to a register. Any ideas would be great.
Also it seems that the CP14 register for reset does not work for the MCU R5F TI implementation.
Thanks
Hi Mohsen,
From Table5-2168 (Reset Supported in the Device):
So the SW_MCU_WARMRST which is triggered by CTRLMMR_WKUP_MCU_WARM_RST_CTRL is basically triggers the MCU_RESETz sequence.
But on the question that you want to reset MCU R5 from MCU and from the details from https://e2e.ti.com/support/processors/f/791/t/963126 - I tried to connect CCS (with GEL files and launch.js) and then connecting to MCU R5 I was able to write 0x8000_0003 to the WKUP_PSC0_MDCTL_y (0x4200_0A4C) ß This reset the MCU.
To bring it back I just connected to another (MAIN) R5 and then modified the same WKUP_PSC0_MDCTL_y contents to 0x0000_0103.
I have attached a small recording of a video while doing this. (/cfs-file/__key/communityserver-discussions-components-files/791/ccs_5F00_recording_5F00_mcu_5F00_reset.7z)
Let me know if this is what you are looking for, if not I think we need to discuss with the wider team.
Regards,
Karan
Hi Mohsen,
On using the CTRLMMR_WKUP_MCU_WARM_RST_CTRL register for reset from MCU R5, follow the below:
1. Connect CCS, run the launch.js (default)
2. Connect to MCU R5
3. Unlock partition 6 for WKUP_CTRL_MMR0
From memory browser modify the below registers:
4. Issue reset from MCU R5
Write 0x0006_0000 to CTRLMMR_WKUP_MCU_WARM_RST_CTRL (0x4301_817C)
5. To confirm the reset: you will see the debugger disconnected and then after connecting back to MCU R5 you can check the CTRLMMR_WKUP_RESET_SRC_STAT (0x4300_0050) ß Bit0 will be set.
NOTE: here the MAIN cores will also be reset as this triggers a MCU_RESETz Sequence
Regards,
Karan