U-boot Bootloader not loading for ADLINK LEC-IMX8MP

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

U-boot Bootloader not loading for ADLINK LEC-IMX8MP

Jump to solution
2,102 Views
AsadNawaZ_93
Contributor II

Hello dear NXP fellows,
 
I am trying to bring up a custom board ADLINK LEC-iMX8M Plus SMARC Module using BSP from ADLINK meta-adlink-nxp-kirkstone and building yocto project as per the instructions. However when I flash the bootloader (imx_boot), I get error which is shown below.

I have tried to build U-boot, ATF & DDR firmware in standalone ENV

#uboot
make distclean 
make O=build adlink_lec8mp_defconfig
make O=build

#ATF
make PLAT=imx8mp bl31

and then created the bootcontainer using mkimage utility, but still I get the same error.

###############################################

U-Boot SPL 2022.04-lf_v2022.04+g16e8414193 (Oct 08 2022 - 13:33:43 +0000)
No pca9450@25
DDRINFO: start DRAM init
DDRINFO: DRAM rate 3000MTS
DDRINFO:ddrphy calibration done
DDRINFO: ddrmix config done
Normal Boot
Trying to boot from BOOTROM
Boot Stage: Primary boot
image offset 0x8000, pagesize 0x200, ivt offset 0x0
Can't support legacy image
SPL: failed to boot from all boot devices

ERROR ### Please RESET the board

###############################################

Debugging Results:
I have search alot about this issues and it looks like there are some image offset issues (specially IVT table). Image Vector Table (IVT) is a list of pointers located at a fixed address that the ROM examines to determine where the other components of the program image are located.

Based on Boot problems imx8mp_evk

I have tried to compile uboot for iMX8MP Model

make distclean
make O=build imx8mp_evk_defconfig 
make O=build

and then generated bootcontainer using mkimage utility. This image run successfully and board is able to load uboot.

I compared the IVT table for both iMX8MP & ADlink_LEC8MP and I see a few differences which I guess is the reason for my bootloader not booting in the case for ADLINK.

I am attaching here IVT images for both cases. I am not sure how to correctly set these values in source code. However I believe I have identified the root casue for my issue. May I also know how can I validate/decode the uboot flash image to know its expected offsets?

Thanks in advance.

Regards

Asad

Labels (1)
Tags (2)
0 Kudos
1 Solution
2,047 Views
AsadNawaZ_93
Contributor II

ADlink_LEC8MP is a special SMARC board based on IMX8MP. https://www.ipi.wiki/pages/imx8mp-docs?page=ModuleIntroduction.html


In fact I have found the solution. It was an issue of wrong UART address for ATF "ATF_BOOT_UART_BASE" in uboot. After setting it correctly as per the UART address on carrier board (Renasas SMARC), I got it working.

View solution in original post

0 Kudos
2 Replies
2,048 Views
AsadNawaZ_93
Contributor II

ADlink_LEC8MP is a special SMARC board based on IMX8MP. https://www.ipi.wiki/pages/imx8mp-docs?page=ModuleIntroduction.html


In fact I have found the solution. It was an issue of wrong UART address for ATF "ATF_BOOT_UART_BASE" in uboot. After setting it correctly as per the UART address on carrier board (Renasas SMARC), I got it working.

0 Kudos
2,078 Views
joanxie
NXP TechSupport
NXP TechSupport

what difference between iMX8MP & ADlink_LEC8MP ? bootdata.size? anything difference do you find? the ADLINK LEC-iMX8M Plus SMARC  isn't nxp board, I'm not familiar with this, how did you download the images to the board? pls tell me what command you use

0 Kudos