here are the following questions that need your help to analyze.
Our project uses S32K312, which consists of boot and APP projects,
APP project has FreeRTOS system, and the RAM space used by APP project is greater than 120K.
When debugging standby RAM, it is found in the APP project that the data in standby RAM is not saved normally after sleeping wake-up.
The boot jump APP is normal at this time.
At this point the project's ld,map file is attached as an attachment.
The data in standby RAM is not saved properly,
we suspect that there is no standby RAM space reserved in the boot project,
resulting in the standby RAM being initialized in the boot project.
We add the following modifications to the LD file of boot,
MEMORY
{
int_flash : ORIGIN = 0x00400000, LENGTH = 0x0003FFFC /* 256KB, PBL*/
int_flash_cmp_flag : ORIGIN = 0x0043FFFC, LENGTH = 0x00000004 /* 4B*/
int_itcm : ORIGIN = 0x00000000, LENGTH = 0x00008000 /* 32KB */
int_dtcm : ORIGIN = 0x20000000, LENGTH = 0x00010000 /* 64KB */
int_sram : ORIGIN = 0x20400000, LENGTH = 0x0000DF00 /* 56K - 256B*/
int_sram_fls_rsv : ORIGIN = 0x2040DF00, LENGTH = 0x00000100 /* 256byte */
int_sram_stack_c0 : ORIGIN = 0x2040E000, LENGTH = 0x00001000 /* 4K */
int_sram_no_cacheable : ORIGIN = 0x2040F000, LENGTH = 0x00004000 /* 16kb , needs to include int_results*/
int_sram_array_data : ORIGIN = 0x20413000, LENGTH = 0x00003E00 /* 16k - 512B */
int_sram_results : ORIGIN = 0x20416E00, LENGTH = 0x00000200 /* 512byte */
int_sram_shareable : ORIGIN = 0x20417000, LENGTH = 0x00001000 /* 4k */
ram_rsvd2 : ORIGIN = 0x20418000, LENGTH = 0 /* End of SRAM */
}
MEMORY
{
int_flash : ORIGIN = 0x00400000, LENGTH = 0x0003FFFC /* 256KB, PBL*/
int_flash_cmp_flag : ORIGIN = 0x0043FFFC, LENGTH = 0x00000004 /* 4B*/
int_itcm : ORIGIN = 0x00000000, LENGTH = 0x00008000 /* 32KB */
int_dtcm : ORIGIN = 0x20000000, LENGTH = 0x00010000 /* 64KB */
int_sram_swc : ORIGIN = 0x20400000, LENGTH = 0x00000100 /* 256B */
int_sram : ORIGIN = 0x20400100, LENGTH = 0x0000DE00 /* 56K - 512B*/
int_sram_fls_rsv : ORIGIN = 0x2040DF00, LENGTH = 0x00000100 /* 256byte */
int_sram_stack_c0 : ORIGIN = 0x2040E000, LENGTH = 0x00001000 /* 4K */
int_sram_no_cacheable : ORIGIN = 0x2040F000, LENGTH = 0x00004000 /* 16kb , needs to include int_results*/
int_sram_array_data : ORIGIN = 0x20413000, LENGTH = 0x00003E00 /* 16k - 512B */
int_sram_results : ORIGIN = 0x20416E00, LENGTH = 0x00000200 /* 512byte */
int_sram_shareable : ORIGIN = 0x20417000, LENGTH = 0x00001000 /* 4k */
ram_rsvd2 : ORIGIN = 0x20418000, LENGTH = 0 /* End of SRAM */
}
The test again found that the APP project could not work normally after the power failure and restart,
but when the PE debugger was connected, it was possible to jump from boot to APP work.
The app project has not been modified, only the ld file of the boot project has been modified,
why does it cause the APP to run abnormally?
Please help analyze thank you very much