Hello everyone,
I have successfully used the unified bootloader to upload the program by CAN. On the other hand, I have been able to successfully use the DTCM memory following the example code.
Unified bootloader: https://community.nxp.com/t5/S32K-Knowledge-Base/Unified-bootloader-Demo/ta-p/1423099
DTCM example: https://community.nxp.com/t5/S32K-Knowledge-Base/Example-Siul2-Port-Ip-Example-S32K344-ITCM-DTCM-S32...
If I load the program with the linker option as in the DTCM example, the program loads fine after reseting the power to the board. However, if I change the linker file to change the Flash starting point (since the bootloader is in there) the board does not start.
I have seen that for the DTCM the startup_cm7.s needs to be changed to start the DTCM and ITCM areas. Do I need to change that as well in the Bootloader application (The one loaded through JTAG let's say) aside from the application loaded through the bootloader?
Thank you in advance,
Hi @dsantxez.,
Please look into these community posts with a similar problem:
These posts explain how to configure the jump to user application.
Best regards,
Julián.
Thank you for your reply.
I have checked those posts and my issue is the following.
If I don't use the DTCM memory in my program the bootloader works as expected and the bootloader jumps to the main app as it should and works fine.
I my App uses the DTCM memory, just change the startup_cm7.s file, the app works fine launch by Jtag but the bootloader jump doesn't work properly.
That's why I asked if the startup_cm7.s change in the bootloader itself is necessary. However, as far as I understand, the bootloader jumps to the applications startup_cm7.s point.
I will test changing the bootloader startup_cm7.s and see if it works. If it does, I will publish the code here so that people can use it.