Run Multicore Applications on S32G-VNP-RDB3 Failed

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Run Multicore Applications on S32G-VNP-RDB3 Failed

2,444件の閲覧回数
lihongjun
Contributor III

Dear NXP,

I am practicing multicore application on S32G-VNP-RDB3 board. I have successfully built all of the required images; but when I set the board boot from nor flash and turn it on, no boot log appears on the terminal.

The building operations were performed strictly according to document AN13750 and the tips given my NXP technical supporters, but with 2 minor distinctions and 1 uncertainty described below:

1) When config BootLoader in EB, I let the Rm enabled, because if I disable it compilation will failed due to errors; while AN13750 says it should be disabled. I configure the BootLoader as below:

lihongjun_1-1698826233558.png

lihongjun_2-1698826265491.pnglihongjun_3-1698826411233.png

 

2)  When config IVT, I unchecked the HSE, while AN13750 says it should be configured. My IVT config is:

lihongjun_0-1698825689011.png

3) The uncertainty is, S32G3 LinuxBSP 35.0 UM document says the <plat> parameter must be replaced with s32g3xxaevb for s32g399ardb3 board. I am not sure is it correct or mistyped. My ATF build result is shown below, FYI

lihongjun_4-1698827191293.png

Are all the steps above are correct or not? What is the reason caused the boot failure issue?

Please help.

Thanks.

 

0 件の賞賛
返信
7 返答(返信)

2,429件の閲覧回数
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

We have the following comments for your open points:

1) When config BootLoader in EB, I let the Rm enabled, because if I disable it compilation will failed due to errors; while AN13750 says it should be disabled. I configure the BootLoader as below:

A1 >> Rm module should be disabled, as per AN13750. The compilation errors could be related to not deleting the output folder prior to generating the code, since the project maintains previous configuration. We can recommend the following community thread which talks about this situation:

compile error when build bootloader, following AN1... - NXP Community

2)  When config IVT, I unchecked the HSE, while AN13750 says it should be configured. My IVT config is:

A2 >> If you did not select the "Secure Boot" option, this is OK. If you have this option checked, then you will have problems where the Bootloader is waiting for the HSE Subsystem response.

3) The uncertainty is, S32G3 LinuxBSP 35.0 UM document says the <plat> parameter must be replaced with s32g3xxaevb for s32g399ardb3 board. I am not sure is it correct or mistyped. My ATF build result is shown below, FYI

A3 >> We seem to see what you are saying. The plat should be "s32g399ardb3" for RDB3 platform. This can be seen under the following path:

"arm-trusted-firmware\plat\nxp\s32\s32g\s32g3"

Where there is a folder for each platform variant under S32G3.

Please, let us know.

0 件の賞賛
返信

2,370件の閲覧回数
lihongjun
Contributor III

Dear Daniel,

The newly progresses I have made are:

1) Disable secure boot and other related options in EB, rebuild the M7_0 bootloader;

2) Re-generate a bt_m7_blob.bin file in S32DS using IVT tool, the file includes DCD, HSE and bootloader.

After I burn this blob file, fip.bin and IPCF demos to nor-flash, set the board to boot from nor, it shows:

NOTICE: Reset status: Power-On Reset
ERROR: Failed to check FDT integrity
PANIC at PC : 0x0000000034306878

It seems that the dtb on SD card is not correct.

The u-boot, ATF and kernel images for SD card are built according to the tips introduced in chapter 4 of AN13750, with necessary amendments concluded before.

Please tell me how to solve this problem.

Thanks.

 

0 件の賞賛
返信

2,420件の閲覧回数
lihongjun
Contributor III

Dear Daniel,

I am very appreciated for your reply. But the issue is still there.

As for M-core BootLoader, I disabled Rm module and generated project again in EB, deleted the bin folder, run lauch.bat, and the boot loader was built successfully. Then I re-generated a bt_m7_blob.bin file using IVT tools.

As for A53 core images, the A53 u-boot, ATF and Kernel were built according to S32G3 LinuxBSP 35.0 User Manual, while s32g399ardb3_defconfig parameter was used for u-boot making, variable plat was set to s32g399ardb3 for ATF making. 

But the board still cannot bootup after I burned Nor flash and SD card and set the board boot from external Nor flash. (BTW, my target is boot the board  from M7 core and run IPCF demos).

But when I set board boot from SD card, it hangs up when booting BL31. But if I use another fip.s32 file given by a Chinese FAE, built under BSP33.0 as he said, the board can bootup from SD card successfully.

So I think maybe some mistakes exist in my ATF building process...

My questions: 

1) Since the fip.s32 built by myself not works, I think the fip.bin built by me is not correct too, and just this file causes nor flash boot failure of the board. If my conclusion reasonable?

2) Is u-boot and ATF for S32G-VNP-RDB3 must be built under BSP33.0? 

3) If u-boot and ATF images can be built under BSP35.0, what shall I do to build them correctly. Should the parameters or make files be modified furtherly? If so, please tell me.

4) Are there some other reasons cause the issue? If so, what's your suggestions?

5) After I do these jobs OK, I plan to build IPCF modules for A53 core. I don't know if I must do it according to AN13750. I notice that in IPCFPB.pdf IPCF it says the "IPCF driver is provided in Yocto images from NXP Auto Linux BSP (fsl-image-auto) but can be also build manually". So maybe I need not to build them at all? Please clarify for me.

Thanks.

0 件の賞賛
返信

2,412件の閲覧回数
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

By the following comment:

"But if I use another fip.s32 file given by a Chinese FAE, built under BSP33.0 as he said, the board can bootup from SD card successfully."

We understand that you are using a BSP33.0 base image (*.sdcard file) and you are building uboot/ATF within BSP35.0, is this correct? If so, this should not be done. You should not mix BSP versions. You either build the uboot/ATF under BSP33.0 or use a BSP35.0 base image.

The first step to confirm that the fip.s32 built works, should be to modify it as per the AN13750 shows:

DanielAguirre_0-1698945347753.png

Then boot the S32G from the SD interface. If built correctly, you should see the uboot/Linux terminal being shown.

As for IPCF, the pre-built NXP images should already have the IPCF module available. Under BSP33.0 IPCF has a bug which AN13750/AN13750SW provides a patch for. For newer BSP's, there should not be a need for the patch. Also, BSP36.0 and newer BSP's have a bug related to IPCF multicore applications. If you need to work under an IPCF multicore application, we recommend using BSP35.0.

Please, let us know.

0 件の賞賛
返信

2,393件の閲覧回数
lihongjun
Contributor III

Dear Daniel,

I checked my u-boot and ATF source and find that I got the latest(38.0) version. So I checked out the 35.0 version and built them again, and after I burn the newly generate fip.s32 to SD card, the board can bootup from SD card now.

But the board still cannot boot from nor flash after the newly generate fip.bin was burned to the flash, no information is printed via serial port.

The building result of ATF shows:

Image Layout
IVT: Offset: 0x1000 Size: 0x100
AppBootCode Header: Offset: 0x1200 Size: 0x40
Application: Offset: 0x1240 Size: 0x30800

Boot Core: A53_0
IVT Location: SD/eMMC
Load address: 0x342faf00
Entry point: 0x34302000

The boot source config is as below:

lihongjun_0-1698997107479.png

And the IVT config is as below:

lihongjun_1-1698997226854.png

And I still need your help.

Thanks. 

0 件の賞賛
返信

2,385件の閲覧回数
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

Seeing the addresses set under the Bootloader, we understand that they are close to each other, and that could cause the images being rewritten incorrectly. Which IPCF examples are you using?

Seeing the default linker file provided under the IPCF examples we are not seeing the addresses you are using. We created a simple example and result in the following addresses being used:

DanielAguirre_0-1699039096387.png

We are able to boot both cores no problem from our side.

To verify the fip.bin file, you could also create an IVT/blob image where the AppBl is the fip.bin file, load the DCD and QSPI parameters and select the A53_0 as the boot core. If the fip.bin is correct, you should be able to boot from the QSPI interface and see the linux terminal being boot up. This if you want to confirm that the fip.bin is working.

Please, let us know.

0 件の賞賛
返信

2,402件の閲覧回数
lihongjun
Contributor III

Dear Daniel,

The base image I used is the pre-built image binaries_auto_linux_bsp35.0_s32g3_pfe, which is included in the S32G3 software bundle. The board can bootup from SD card if I just use the original image. But if I copy the fip.s32 file(built by myself under BSP35.0 according to BSP35.0 user manual) to SD card using dd command as told in AN13750, the board cannot boot from SD card and hangs up when loading BL31. So the Chinese FAE guy gave a fip.32 file(built under BSP33.0 as he said) to me, just for testing. But it works, and this confused me a lot.  

I think I should do everything step by step according to AN13750, but use BSP35.0 and S32DS3.5 to practice multi-core application on the RDB3 board, is this correct?

Thanks.

0 件の賞賛
返信