[i.MX6ULL] Boot and run Linux system from eMMC

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

[i.MX6ULL] Boot and run Linux system from eMMC

1,085 次查看
alanlow
Contributor II

Hi,

I built an image from Murata IMX BSP yocto project for i.MX6ULL EVK (Liunx 5.10.72). I am able to boot from SD card and run the kernel. However, I need to build an image which can run the system on eMMC on a custom board (no SD card). Please provide advises for the following:

1) Do I need to modify any kernel-source or DTS file to enable eMMC?

2) I notice we need to boot i.MX6ULL to serial mode and use NXP Mfgtool (uuu.exe) to write the image to eMMC. Is the command shown below the right command to use (assuming my image filename is rootfs.sdcard.bz2)? If no, please kindly advise the correct command(s).

uuu -b emmc_all bootloader rootfs.sdcard.bz2/*

I did a quick search in the community regarding this topic but mostly only mention about (2) but not (1).

Any pointers will be greatly appreciated.

标签 (1)
标记 (2)
0 项奖励
回复
7 回复数

1,076 次查看
joanxie
NXP TechSupport
NXP TechSupport

the command you use uuu -b emmc_all bootloader rootfs.sdcard.bz2/* should be ok, but let me remind, I don't know what bsp version you use, for old bsp(like 5.x), the rootfs file is rootfs.wic,  now the latest bsp(6.x), the rootfs file is rootfs.wic.zst, don't choose the wrong file, if you just want to download your images to emmc instead of sd card, you don't need change any kernel source

0 项奖励
回复

1,024 次查看
alanlow
Contributor II

Hi Joanxie,

The image I build has "wic.bz2" extension. How exactly should I run the uuu command (a or b)?

  1. uuu -b emmc_all u-boot-imx6ull14x14evk.imx-emmc core-image-base-imx6ull14x14evk-<YYYY><MM><DD><xxxxxx>.rootfs.wic.bz2
  2. uuu -b emmc_all u-boot-imx6ull14x14evk.imx-emmc core-image-base-imx6ull14x14evk-<YYYY><MM><DD><xxxxxx>.rootfs.wic (unzipped)

After uuu execute => boot -f u-boot-imx6ull14x14evk.imx-emmc, the debug output shows the messages below:

======================================

U-Boot 2021.04-lf_v2021.04+g263b27e076 (Nov 22 2021 - 01:39:23 +0000)

CPU: i.MX6ULL rev1.1 900 MHz (running at 396 MHz)
CPU: Commercial temperature grade (0C to 95C) at 41C
Reset cause: POR
Model: i.MX6 ULL 14x14 EVK Board
Board: MX6ULL 14x14 EVK
DRAM: 512 MiB
MMC: FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from MMC... *** Warning - bad CRC, using default environment

[*]-Video Link 0 (480 x 272)
[0] lcdif@21c8000, video
In: serial
Out: serial
Err: serial
switch to partitions #0, OK
mmc1(part 0) is current device
Net: Could not get PHY for FEC1: addr 1
Could not get PHY for FEC1: addr 1
Get shared mii bus on ethernet@2188000
Could not get PHY for FEC1: addr 2
Get shared mii bus on ethernet@2188000
undefined instruction
pc : [<00000084>] lr : [<9eea92d7>]
reloc pc : [<e897c084>] lr : [<878252d7>]
sp : 9de7a6a8 ip : 00000020 fp : 00000017
r10: 9dea15c0 r9 : 9de81ec0 r8 : 9de834b8
r7 : 9de83458 r6 : 00000006 r5 : 00000004 r4 : 9de85388
r3 : 00000048 r2 : 00000006 r1 : 00000004 r0 : 9de85388
Flags: nzCv IRQs off FIQs off Mode SVC_32
Code: 00000000 00000000 00000000 00000011 (79706f43)
Resetting CPU ...

resetting ...

=================================================

This keep repeating itself until I force kill the uuu execution.

Does this mean u-boot is programmed to the eMMC but encounter error when booting up? However, when I switch to internal boot nothing is being display from the debug output.

Please advise on how to proceed further.

 Thanks.

 

FYI: I use uuu Linux version 1.5.21-0-g1f42172.

 

 

0 项奖励
回复

1,002 次查看
joanxie
NXP TechSupport
NXP TechSupport

could you boot up your board with the command "uuu -b emmc_all u-boot-imx6ull14x14evk.imx-emmc"?

0 项奖励
回复

997 次查看
alanlow
Contributor II

Hi Joanxie,

It is the same result as mentioned above.

One thing to clarify here is that the custom board default boot device is NAND as there is no GPIO configure to set the boot device to eMMC. Is it possible to program the efuse 0x450[7:0] to 0x60 via SEGGER JLink thru JTAG?

0 项奖励
回复

967 次查看
joanxie
NXP TechSupport
NXP TechSupport

since board doesn't support emmc boot, why are your original questions about downloading images to emmc, is it the another question or customer use different board this time? I'm confused with this, what's the board status and what is the customer request?

0 项奖励
回复

961 次查看
alanlow
Contributor II

Hi Joanxie,

My problem has been resolved.

The u-boot got reset when it is probing for ethernet port and somehow run into undefined instruction. My custom board does not use ethernet port so I disabled the probing of ethernet from u-boot.

Now the u-boot can program the image to eMMC.

I also can use the u-boot to program the fuse to set boot device to eMMC.

Thanks for your help!

 

 

0 项奖励
回复

957 次查看
joanxie
NXP TechSupport
NXP TechSupport

glad to hear this

0 项奖励
回复