uuu flash u-boot but did not start it

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

uuu flash u-boot but did not start it

Jump to solution
3,715 Views
MicMoba
Contributor V

Hi I am a litte bit confused. I have a uboot image that runs for my i.MX8MP from sd-card as well as from emmc but when I download that file by uuu-tool the bootloader didn't start.

sudo ./uuu -lsusb

uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.4.107-15-gd1c466c

Connected Known USB Devices
       Path     Chip    Pro     Vid     Pid     BcdVersion
       ==================================================
       1:41     MX865   SDPS:   0x1FC9 0x0146   0x0001

sudo ./uuu SDPS: boot -f u-boot-imx8mp-sd.bin-flash_evk

Output debug console:

U-Boot SPL 2020.04 (Mar 23 2021 - 08:19:42 +0000)
DDRINFO: start DRAM init
DDRINFO: DRAM rate 4000MTS
DDRINFO:ddrphy calibration done
DDRINFO: ddrmix config done
Normal Boot
Trying to boot from BOOTROM
Find FIT header 0x&480331a0, size 887
Need continue download 1024
Download 791248, total fit 792880
NOTICE: BL31: v2.2(release):rel_imx_5.4.70_2.3.0-0-gf1d7187f2-dirty
NOTICE: BL31: Built : 09:58:42, Dec 1 2020

And then it stucks. I would expect that the u-boot starts from the RAM but it doesn't.

Any suggestions why my uboot starts from sd-card and not over uuu-tool?

Labels (1)
0 Kudos
1 Solution
3,666 Views
MicMoba
Contributor V

I got it now. The uboot tries to place the environment it the media wich it is booted from. So I can configure ENV_IS_NOWHERE and ENV_IS_MMC parallel and in the case I boot over serial download mode it takes a temporaly (NOWHERE) environment and in the case of booting from sd-card or emmc it takes the environment in MMC. Sd-card or emmc depends on the boot media.

View solution in original post

0 Kudos
5 Replies
3,683 Views
MicMoba
Contributor V

I just found the i.MX8M Reference Manual where the high-level boot sequence is described. I think my issue is the authentication of image.

0 Kudos
3,696 Views
igorpadykov
NXP Employee
NXP Employee

Hi MicMoba

 

one can try uuu programming commands described on

https://community.nxp.com/t5/i-MX-Processors/how-to-flash-u-boot-zImage-dtb-rootfs-separately-to-eMM...

 

Best regards
igor

 

0 Kudos
3,673 Views
MicMoba
Contributor V

I found my issue. I use the environment and redundant environment.

ENV_OFFSET=0x3C0000

ENV_OFFSET_REDUND=0x3E0000

ENV_SIZE=0x10000

ENV_IS_IN_MMC=y

If I add "CONFIG_ENV_IST_NOWHERE=y" to my defconfig everything works fine. Is it possible uboot can't access the mmc? Or access the wrong mmc?

0 Kudos
3,667 Views
MicMoba
Contributor V

I got it now. The uboot tries to place the environment it the media wich it is booted from. So I can configure ENV_IS_NOWHERE and ENV_IS_MMC parallel and in the case I boot over serial download mode it takes a temporaly (NOWHERE) environment and in the case of booting from sd-card or emmc it takes the environment in MMC. Sd-card or emmc depends on the boot media.

0 Kudos
3,687 Views
MicMoba
Contributor V

Hi igor,

I think I have a different problem. 

When I flash my uboot-image to sd-card I can start my board in boot-mode sd-card. In uboot I can run fastboot mode over uboot command. Then I can communicate over uuu-tool. 

When I switch to boot-mode usb-serial-download I can detect my board with ./uuu lsusb and I can download my uboo-image with ./uuu SDPS: boot -f u-boot-imx.bin. But in that case my device did not jump automaticaly into uboot fastboot mode and I can't talk to my device over uuu-tool.

In both cases the uboot image is the same.

I did some investigations and figgured out that the u-boot-nodtb.bin file seems to be my problem. I built the uboot-image with imx-mkimage tool and when I exchange the u-boot-nodtb.bin with an old one the uboot starts automaticaly in fastboot mode. 

It seems that the i.MX8 use different addresses to start uboot in different boot-modes. I am looking for a document where the usb-serial-boot mode is described in detail.

It looks like a switch inside the startcode of uboot. If I start from sd-card jump to 0xaaaa and if I start from usb-serial-download-mode jump to 0xbbbb

0 Kudos