Hello,
I'm using i.mx8dual, and I'm trying to start M4 from u-boot using the bootaux command, but it seems that the u-boot doesn't even have access to the memory at 0x34FE0000, which is TCM of M4. Reading the TCM will cause a crash, as shown below:
=> md.b 0x34FE0000 0x100
34fe0000:"Synchronous Abort" handler, esr 0x96000210
elr: 0000000080060d5c lr : 0000000080060c74 (reloc)
.....
Code: 12003c42 783c7b62 92403c42 17ffffeb (39400062)
Resetting CPU ...
I thought that was just due to the following code in the board_system_config function
BRD_ERR(rm_find_memreg(pt_boot, &mr_m4_0, 0x034FE0000ULL,
0x034FE0000ULL));
BRD_ERR(rm_assign_memreg(pt_boot, pt_m4_0, mr_m4_0));
so I commented them out. But it still didn't work. Afterwards, I found that sc_fw_port.pdf says "Code loading will require the M4 subsystem already be powered on", so I added
BRD_ERR(pm_set_resource_power_mode_all(pt_boot, pt_m4_0, SC_PM_PW_MODE_ON, SC_R_LAST));
to the end of the board_system_config function. However, this caused my CPU to halt even before running u-boot.
Isn't pm_set_resource_power_mode_all what should be called to power on the M4 subsystem?
Solved! Go to Solution.
it seems this document is internal, I couldn't share this in the public community, you can refer to the link as below:
Thanks for the reply. But when I clicked on the link, I got this message:
Access Denied
You do not have sufficient privileges for this resource or its parent to perform this action.
Click your browser's Back button to continue.
it seems this document is internal, I couldn't share this in the public community, you can refer to the link as below:
I think this document is very useful for you