About programming s32g3 nor-flash address issue

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

About programming s32g3 nor-flash address issue

1,441 Views
fengxianeric
Contributor IV

I am programming flash with boot M-core and A-core purpose, according to the AN13750.pdf, touch the address scope 0x0~0x500000, and got failed uboot in flash boot mode, I am wondering the address alignment issue due to ever operating uboot memory layout by ds3.5/ivt gfx tool. The clear question is how to program the correct addresse ?  thanks.

0 Kudos
13 Replies

1,417 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

AN13750 is for S32G2 platform, not for S32G3, which you are using (or it is implied on the title).

Since the Bootloader is designed for S32G2, we cannot confirm that the functionality will stay the same for S32G3.

Have you used this AN for an S32G2 platform?

Please, let us know.

0 Kudos

1,406 Views
fengxianeric
Contributor IV
No, my handy hw for s32g3 but the only present reference doc is <AN13750.pdf> in this aspect. Basically I know how to start M7 core manually and failed to load by cold-boot way after programming flash partition by s32flashtool GUI.
0 Kudos

1,388 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

Thanks for your feedback.

Just to be sure, you are successfully implementing the bootloader with the M7 application, once you put the A53 application (linux), you fail to boot, is that correct?

Also, are you using the out-of-the-box BSP for S32G3?

Please, let us know.

0 Kudos

1,380 Views
fengxianeric
Contributor IV
About the aforementioned part, now I can build bootloader successfully and not sure yet about ivt address ajustment correctness (I clicked button auto ajust in ivt gfx interface). About Linux part, 4 kernel modules (*.ko) and sample program (.elf) already been running with errors. So I doubted on m7 apps running issue.
0 Kudos

1,362 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

Thanks for your feedback.

We still don't understand, we apologize.

Which NXP BSP are you using? How are you creating the IVT? Are you following AN13750 step by step?

Please, let us know.

0 Kudos

1,333 Views
fengxianeric
Contributor IV
bsp 35.0 ever built by me and produced fsl-iamge-auto, and IVT I mentioned for the configuration windows within tresos studio to configure bootloader.bin. Yes I followed up AN13750 and actutually refer to it due to being documented for s32g2.
0 Kudos

1,301 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

Thanks for your feedback, have you change the FIP_ALIGN variable as per the bootloader requirement?

DanielAguirre_0-1684776511641.png

Please, let us know.

0 Kudos

1,226 Views
fengxianeric
Contributor IV
Thanks very much.
I still question how to verify fip.bin workable or not.
I gave a trial by programming 0x100000 on flash, but failed in booting from flash.
My actions,
1. programming .flashimg to flash;
2. programming 0x100000~0x100000+filesize
Is it correct way to verify ?
0 Kudos

1,215 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

Thanks for your feedback.

One way you can verify if the "fip.bin" file is working and the "fips.32" was successfully modified in the BSP image is to create an IVT with the A53_0 core selected as the boot core. This will bypass the need of the bootloader, just leaving the "fip.bin" file to verify.

We will explain the steps below:

  • Create a new project and select the platform and RTD version.
  • Under the new project, open Config Tools by selecting the folder and clicking on the blue chip icon (Open S32 Configuration Tools), as shown below.

DanielAguirre_0-1685467178119.png

  • Once you have entered Config Tools, you select the IVT tab (The 3 horizontal rectangles stacked up) and configure as follows:

DanielAguirre_1-1685468439370.png

  • As a note, the RAM start pointer and RAM entry pointer should be the ones that your ATF build resulted in. For my specific case, the values shown are the ones that the ATF build gave to me, you need to double check the values with your ATF build (as shown on the AN13750).
  • For the QSPI parameters, some binaries are already provided under the S32DS installation. You should be able to find them following the path (for both S32DS v3.4 and v3.5):

C:\nxp\S32DS.3.4\eclipse\mcu_data\processors\S32G399A\PlatformSDK_S32XX_2022_03\quadspi\default_boot_images\mx25_sim133ddr.bin

  • Once you have created the blob image, you flash it into the embedded NOR Flash and change the boot settings to select the QSPI interface. Once the SD is inserted, you turn on the platform and the BootROM should fetch the "fip.bin" from the NOR Flash, then jump to the SD image.

Please, let us know.

0 Kudos

1,195 Views
fengxianeric
Contributor IV
BTW, I see you attached image for g2 but I am responsible for s32g3, so about addresses issue I still worry about them.
0 Kudos

1,185 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

That is correct. We shown the S32G2 IVT configuration, which is valid for S32G3.

As said before, the addresses are the ones your ATF build provided. The ones we shown are specific to our build. If you use them as we show them, there could be a possibility that it works, but it might be a low probability.

You should look for the ATF build log and found what are the addresses that your ATF shown. If you followed AN13750, under the ATF steps, it will explain what you should see under the build logs.

Please, let us know.

0 Kudos

1,031 Views
fengxianeric
Contributor IV
The doc say fip.bin be programmed to flash, but I think it should be fip.s32, do you agree with me ?
0 Kudos

899 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

The following is told under the AN13750:

DanielAguirre_0-1688400172109.png

For which, fip.bin file is the one being deployed under the NOR Flash.

Please, let us know.

0 Kudos