Hi,
I found that my R294 multicore project could not auto-suspend at the Z7_1 and Z7_2's main functions' first line after I load my program and run into debug mode. The debugger only auto-suspended at Z4's main entry but two Z7 not.
Is there any method to resolve this issue?
By the way, I found the official SDK's interrupt control multicore project can auto-suspend at each core's first main entry but my project not.
已解决! 转到解答。
Hi Gordon,
message "Running: User Request" is displayed when a core has not been started yet. The interrupt multicore project starts Z7 cores at the end of startup files. SystemInit function is called before jumping to main and it starts the cores. When you reach the main function, cores are already running.
If this is not done in your project, you will see "Running: User Request" until you start the cores. You can take a look at the function SystemInit here:
C:\NXP\S32DS_Power_v2.1\S32DS\software\S32_SDK_S32R294_RTM_1.0.0\platform\devices\S32R294\startup\system_S32R294.c
Regards,
Lukas
I found a powerup procedure for S32R274 which introduces that how to start Z7 core.
Is it also compatible for R294? I think that maybe my Z7s didn't power up successfully.
Hi Gordon,
message "Running: User Request" is displayed when a core has not been started yet. The interrupt multicore project starts Z7 cores at the end of startup files. SystemInit function is called before jumping to main and it starts the cores. When you reach the main function, cores are already running.
If this is not done in your project, you will see "Running: User Request" until you start the cores. You can take a look at the function SystemInit here:
C:\NXP\S32DS_Power_v2.1\S32DS\software\S32_SDK_S32R294_RTM_1.0.0\platform\devices\S32R294\startup\system_S32R294.c
Regards,
Lukas
Thanks for your reply.
I found that my project's Z7a & Z7b have been revised the ISRAM's address.
And it leads that the system ran into the wrong default ISRAM address after Z4 started up.
After I defined the correct MACROs for "__cpu1_boot_addr__" and "__cpu2_boot_addr__", the Z7b could started up successfully and suspended at main's 1st line. But Z7a didn't.
Z7a suspended at the "_start: wrteei 0 ;# Disable interrupts" in the start-up assembly.
Do you know why does Z7a suspend here?
Hi Lukas,
Thanks for your reply again.
Indeed, because there is overlapped issue between my code RAMs on Z4's ISRAM and Z7a's ISRAM.
After I reconfigured the location for two ISRAMs, the Z7a could normally start up.
Regards,
Gordon.