Hi, nxp fellows:
We are preparing to use multi-core to run programs in the S32G274A chip, using A53 to run Linux and M7 to run LLCE_CAN.
We referred to "Enabling Multicore Application on S32G2 using S32G2 Platform Software Integration", according to 5.2. Configure the bootloader, installed the recommended software packages, and configured them following the steps.
zhipeng_7-1786181958976.pngzhipeng_7-1786181958976.pngzhipeng_7-1786181958976.pngzhipeng_7-1786181958976.pngzhipeng_7-1786181958976.png
There is an error in 5.3. Build The Bootloader during compilation.
The launch.bat file was edited.
zhipeng_0-1786182860528.pngzhipeng_0-1786182860528.pngzhipeng_0-1786182860528.pngzhipeng_0-1786182860528.pngzhipeng_0-1786182860528.png
An error occurred after running launch.bat.
zhipeng_0-1786180508617.pngzhipeng_0-1786180508617.pngzhipeng_0-1786180508617.pngzhipeng_0-1786180508617.pngzhipeng_0-1786180508617.png
After commenting out the relevant code.
zhipeng_5-1786181360466.pngzhipeng_5-1786181360466.pngzhipeng_5-1786181360466.pngzhipeng_5-1786181360466.pngzhipeng_5-1786181360466.png
zhipeng_2-1786180921774.pngzhipeng_2-1786180921774.pngzhipeng_2-1786180921774.pngzhipeng_2-1786180921774.pngzhipeng_2-1786180921774.png
I found the CryptoDal.h file in the installation directory.
zhipeng_4-1786181305215.pngzhipeng_4-1786181305215.pngzhipeng_4-1786181305215.pngzhipeng_4-1786181305215.pngzhipeng_4-1786181305215.png
zhipeng_6-1786181450684.pngzhipeng_6-1786181450684.pngzhipeng_6-1786181450684.pngzhipeng_6-1786181450684.pngzhipeng_6-1786181450684.png
Where could there be any mistakes?
Thanks.
Hi,zhipeng
Is Secure Boot enabled in the configuration? Try to enable the Secure boot, check if the issue will disappear.
Joey_z_2-1786353784256.pngJoey_z_2-1786353784256.pngJoey_z_2-1786353784256.pngJoey_z_2-1786353784256.pngJoey_z_2-1786353784256.png
BR
Joey
Hi, @Joey_z
Yes, after adding, it will show "undeclared" on the third image.
Commenting out will show "No such file or directory", on the fifth image.
zhipeng_1-1786347067301.pngzhipeng_1-1786347067301.pngzhipeng_1-1786347067301.pngzhipeng_1-1786347067301.pngzhipeng_1-1786347067301.png
"CryptoDal.h" is located in D:\NXP\Integration_Reference_Examples_S32G2_2022_06\code\framework\realtime\bsw\dal\cryptodal\generic\include
"Hse_Ip.h" is located in D:\NXP\SW32G_RTD_4.4_3.0.2_HF01\eclipse\plugins\Crypto_TS_T40D11M30I2R0\include
I have found both files in their respective folders, and the file paths are also written in launch.bat.
The current problem feels like the plugin path was not included during the compilation process.
BR
Hi,zhipeng
For your issue, will there be an error if the following contents are added? Is it commenting out won't cause an error?
Joey_z_0-1786328574726.pngJoey_z_0-1786328574726.pngJoey_z_0-1786328574726.pngJoey_z_0-1786328574726.pngJoey_z_0-1786328574726.png
BR
Joey
Hi,ZhiPeng
Thank you for your information.
Could you share more information with me?
1.Do you only boot ATF and uboot on A core? Have any output on the UART of A core?
2.What is the M core function? is it about the UART/CAN function?
BR
Joey
Hi, @Joey_z
The previous bootloader compilation was successful. Now, I have written the image into the NOR flash and after booting, there is no output on the UART.
I referred to AN13750. Here are my operation steps:
I followed the "S32G2_LinuxBSP_42.0_User_Manual.pdf", and installed u-boot bsp42.0-2022.04 and ATF bsp42.0-2.10 in Ubuntu 20.
I modified s32_mmc.c and s32_common.mk according to 0001-fip-align-and-mmc-init.patch.
zhipeng_0-1787646642108.pngzhipeng_0-1787646642108.pngzhipeng_0-1787646642108.pngzhipeng_0-1787646642108.png
zhipeng_1-1787646670172.pngzhipeng_1-1787646670172.pngzhipeng_1-1787646670172.pngzhipeng_1-1787646670172.png
zhipeng_2-1787646683855.pngzhipeng_2-1787646683855.pngzhipeng_2-1787646683855.pngzhipeng_2-1787646683855.png
I compiled u-boot and ATF.
make CROSS_COMPILE=/opt/S32G/arm-gnu-toolchain-11.3.rel1-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu- ARCH=aarch64 PLAT=s32g274ardb2 BL33=../u-boot/u-boot-nodtb.bin
Image Layout
DCD: Offset: 0x200 Size: 0x1c
IVT: Offset: 0x1000 Size: 0x100
AppBootCode Header: Offset: 0x1200 Size: 0x40
Application: Offset: 0x1240 Size: 0x33e00
Boot Core: A53_0
IVT Location: SD/eMMC
Load address: 0x342f8f00
Entry point: 0x34302000I wrote the fip.s32 onto the SD card. After replacing the fip, the SD card was still able to boot, and the date of the u-boot changed.
U-Boot 2022.04-00213-g5a6f62071f (Aug 24 2026 - 10:35:21 +0800)Configure the bootloader.
zhipeng_3-1787647428751.pngzhipeng_3-1787647428751.pngzhipeng_3-1787647428751.pngzhipeng_3-1787647428751.png
zhipeng_4-1787647490093.pngzhipeng_4-1787647490093.pngzhipeng_4-1787647490093.pngzhipeng_4-1787647490093.png
zhipeng_5-1787647533346.pngzhipeng_5-1787647533346.pngzhipeng_5-1787647533346.pngzhipeng_5-1787647533346.png
zhipeng_6-1787647547310.pngzhipeng_6-1787647547310.pngzhipeng_6-1787647547310.pngzhipeng_6-1787647547310.png
Generate S32G Boot Image
zhipeng_7-1787647657415.pngzhipeng_7-1787647657415.pngzhipeng_7-1787647657415.pngzhipeng_7-1787647657415.png
select the bt_m7_blob.bin to write it to the address 0x0.
select the fip.bin to write it to the address 0x100000.
select theS32G274A_M7.bin to write it to the address 0x200000.
zhipeng_8-1787647865193.pngzhipeng_8-1787647865193.pngzhipeng_8-1787647865193.pngzhipeng_8-1787647865193.png
Now neither the UART nor the CAN is responding. Please help me analyze the situation.
Thanks.
Hi, @Joey_z
Thanks for your reply.
1. Yes, only ATF and u-boot were booted on the A core. The UART did not have any output.
2. The M core ran the LLCE_CAN and Lpspi programs, integrating the "Can_Llce_DS_Loopback_S32G274A_M7" and "Lpspi_Ip_Transfer_S32G274A_M7" routines. It first used SPI communication and then ran LLCE_CAN.
I would like to add some more information:
1. The entire process was carried out according to AN13750, with only a few differences: I used BSP42 and S32DS3.5 versions; I replaced the IPCF routines with LLCE_CAN and only configured M7_0.
2. I compiled BSP42 using Yocto and generated the.sdcard. After importing the SD card, Linux could be started.
3. I compiled the u-boot and ATF of BSP42 according to the "AN13750, 4. Prepare images for Cortex-A53 cores" section. After re-importing the.sdcard and fip.s32 into the SD card, Linux could still be started in SD mode. However, when importing the bootloader and fip.bin into the norflash, no output was obtained.
4. I burned a UART routine for the M7 core separately in the norflash, and Linux could be started and outputted. This proved that the burning tool and norflash were normal.
5. I burned the LLCE_CAN program separately in the norflash. The program did not run, and there was no CAN output.
6. I attempted to configure the EB bootloader to start A53 separately, but re-burning the norflash still did not result in any output.
Thanks.
Hi,zhipeng
1. I understand that your LLCE_CAN is running on the M core. Please test the bootloader's startup of this program M core independently. During the startup process, do not load the A core Image.
2. In your testing, the bootloader can start the UART program of M7, but can it cannot start the LLCE_CAN?
3. Have you tried using the bootloader to only boot the A53?
I have created a new case for this issue in the system in Chinese, the case number is the: 01000969. This will facilitate communication.
BR
Joey