imximage-*.cfg Files Clarifications

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

imximage-*.cfg Files Clarifications

277 Views
moose
Contributor IV

What is the purpose of .cfg files included in multip imx evk board files (ex: imx8mn_evk)? I also see them under mach-imx arch folder. It is not clear how these files are used or if they are used at all. Do we need them or can I just delete it them from the board files? If we need them, can you please explain the syntax and how they are used? We have a boot-up issue, and we are wondering if they are the source of the spl not loading. Thank you.

0 Kudos
7 Replies

209 Views
moose
Contributor IV

@jimmychan the link you provided does not answer the question.

0 Kudos

193 Views
jimmychan
NXP TechSupport
NXP TechSupport

I searched around but no document talk about it. The cfg file was used for DDR configuration for i.mx5, i.mx6. But now, for the i.MX8M, the DDR configuration is put in the <memory>_timing.c. (e.g. ddr4_timing.c). I think it is no need to use for i.MX8M. What error/issue you met? could you tell me more details?

0 Kudos

147 Views
moose
Contributor IV

I am having an optee and secure boot issue but it may not be related to these files. I was just trying to troubleshoot all board files and didn't know the function of these .cfg files.

So just to be clear, are you saying .cfg files in board directories and the mach-imx directory are useless?

 

moose_0-1713312145692.png

 

moose_1-1713312232098.png

 

0 Kudos

145 Views
jimmychan
NXP TechSupport
NXP TechSupport

On i.MX 8M SoC, the second program loader (SPL) is enabled in U-Boot. SPL is implemented as the first-level bootloader running on TCML (For i.MX 8M Nano and i.MX 8M Plus, the first-level bootloader runs in OCRAM). It is used to initialize DDR and load U-Boot, U-Boot DTB, Arm trusted firmware, and TEE OS (optional) from the boot device into the memory. After SPL completes loading the images, it jumps to the Arm trusted firmware BL31 directly. The BL31 starts the optional BL32 (TEE OS) and BL33 (U-Boot) for continue booting kernel. In imx-boot, the SPL is packed with DDR Firmware together, so that ROM can load them into Arm Cortex-M4 TCML or OCRAM (only for i.MX 8M Nano and i.MX 8M Plus). The U-Boot, U-Boot DTB, Arm Trusted firmware, and TEE OS (optional) are packed into a FIT image, which is finally built into imx-boot.

 

To build imx-boot image by using imx-mkimage.

Please follow the Chapter 4.5.13 "How to build imx-boot image by using imx-mkimage" in Linux User's Guide to make the flash.bin manually by yourself. 

 

 

0 Kudos

134 Views
moose
Contributor IV

@jimmychan I am familiar with the information you shared, but my question is specific to the .cfg files I pointed out. None of the resources you shared discuss these files, so my question is: Are they useless, or are they used in some other way that may not be obvious? Thank you.

0 Kudos

123 Views
jimmychan
NXP TechSupport
NXP TechSupport

I think you could try to remove it. I think it is not an important config file for the code building.

0 Kudos