Question about S32G3 Multi-Boot Bootloader Creation

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Question about S32G3 Multi-Boot Bootloader Creation

960 Views
apMike
Contributor I

Hi, all.

I am using the S32G399ARDB3 board and creating a multi-boot Blob Image for the M7 core and A53 core.
I used the GoldVIP-1.12 version with the Bootloader_S32G3XX_ASR_4.4_M7 example, and I modified the boot source information based on the following:

A53:

  • Reset Handler Address: 0x34302000
  • Load Image Address: 0x342F8000
  • Image Size (size of fip.s32): 1,189,472 bytes

M7:

  • Reset Handler Address: 0x34420010
  • Load Image Address: 0x34420000
  • Image Size (size of pfe-master.bin): 1,090,300 bytes

I generated the bootloader.bin using the S32DS IVT Configuration Tool and created the Blob Image.
I uploaded the image using S32 FlashTool with the following configuration:

  • Destination: FLASH
  • Algorithm: MX25UW51245G

I flashed the images to the following addresses:

  • 0x0: Blob Image
  • 0x100000: fip.bin
  • 0x300000: pfe-master.bin

After flashing, I powered on the device, but the boot process stopped at the following log without any further response.

Minicom log:

==============================================================
bootloader 0x2 ComDal_Init() done.
bootloader 0x2 Bootloader initialization complete.
bootloader 0x2 Application 0 image fragment 0 of size 1189504 was loaded from QSPI, address 0x100000.
bootloader 0x2 Application 0 image fragment 0 was loaded in 16.57 milliseconds. bootloader 0x2 Application A53_0 was loaded.
bootloader 0x2 Application 1 image fragment 0 of size 1090304 was loaded from QSPI, address 0x300000.
bootloader 0x2 Application 1 image fragment 0 was loaded in 15.494 milliseconds. bootloader 0x2 Application M7_0 was loaded. ==============================================================

Could you help me figure out the possible cause and how to resolve this issue?

Tags (1)
0 Kudos
Reply
5 Replies

935 Views
apMike
Contributor I

Hi Joey_z ,

Thank you for your interest in my question.
I am using BSP version 41.0, and the pfe-master.bin was built using MasterProject_RDB3 from PFE-DRV_S32G_M7_MCAL_1.3.0. When building the pfe-master.bin file, I referred to S32G_PFE_Master_Slave_Demo_V2_2023_5_23_Eng and set SLAVE_DRIVER=TRUE in the Makefile. Additionally, I commented out Eth_43_PFE_PreInit(NULL_PTR) in src/sample_app_ethswt_initialization.c.

As you mentioned, I followed AN13750 for multi-core booting, and it was working well previously.

Please let me know if you need any additional information!

0 Kudos
Reply

915 Views
Joey_z
NXP Employee
NXP Employee

hi,apMike

Thank you for your reply.

I suggest you try the version of BSP42, there is a known issue as described in ALB-11457, and it has been resolved in Linux BSP42. The root cause lies in the bootloader de-initializes (in SysDal) the peripheral clocks before starting the applications, but s32_io_setup() is called without any prior initialization of the SDHC clocks from ATF. The description is shown in the BSP42 release note:

Joey_z_0-1739512566390.png

The easiest solution to fix this issue is recommending use BSP>=42. If continue working with BSP41, you can refer to these public commits to modify ATF code.

Hope it can help you.

BR

Joey

0 Kudos
Reply

909 Views
apMike
Contributor I

Hi, Joey_z
Thank you for your response! I'll try it as you suggested.
By the way, do you have any examples or documents that I can refer to for running A53 as PFE-Master and M7 as PFE-Slave?

 

0 Kudos
Reply

895 Views
Joey_z
NXP Employee
NXP Employee

hi,apMike

Thank you for your reply.

You can refer to Chapter 7.3.1.4.1 “PFE Slave driver configuration” of the BSP_User_Manual to use PFE as a Slave in the A core. In addition, if the PFE Slave in the A core is working properly, you can refer to these links:

S32G PFE_M_Master_A_Slave_Simple_Demo - NXP Community

S32G PFE master/slave scenarios configurations - NXP Community

However, the document in the link is not an official document, it is for reference only, and we cannot provide any further support for it.

Hope it can help you.

BR

Joey

0 Kudos
Reply

947 Views
Joey_z
NXP Employee
NXP Employee

Hi,apMike

Thank you for contacting us.

Could you tell me the version of the BSP? Where did you get your pfe - master.bin? According to your log, the bootloader successfully loaded the A - core and M - core binary files. There might be some initialization conflicts in the multi - core system or tf-a is not working. Did you refer to AN13750 when you started dual core?

BR

Joey

0 Kudos
Reply