imx8mm uboot 2022.04 boot kernel fail

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

imx8mm uboot 2022.04 boot kernel fail

1,218 Views
jay_chen
Contributor I

U-Boot SPL 2022.04 UBOOT V2.1 (Feb 17 2023 - 10:36:30 +0800)
power_bd71837_init
DDRINFO: start DRAM init
DDRINFO: DRAM rate 3000MTS
DDRINFO:ddrphy calibration done
DDRINFO: ddrmix config done
Normal Boot
CONFIG_NR_DRAM_BANKS is not enough for SDRAM_2
Trying to boot from MMC2
NOTICE: BL31: v2.4(release):lf-5.10.72-2.2.0-0-g5782363f9-dirty
NOTICE: BL31: Built : 02:37:24, Feb 17 2023
NOTICE: BL31: Preparing for EL3 exit to normal world

U-Boot 2022.04 UBOOT V2.1 (Feb 17 2023 - 10:36:30 +0800)

CPU: i.MX8MMQ rev1.0 1800 MHz (running at 1200 MHz)
CPU: Commercial temperature grade (0C to 95C) at 42C
Reset cause: POR
Model: NXP i.MX8MM EVK board
DRAM: 4 GiB
Core: 67 devices, 23 uclasses, devicetree: separate
MMC: FSL_SDHC: 1, FSL_SDHC: 2
OK
In: serial
Out: serial
Err: serial
SEC0: RNG instantiated

BuildInfo:
- ATF 5782363

switch to partitions #0, OK
mmc2(part 0) is current device
flash target is MMC:2
Net: eth0: ethernet@30be0000
Fastboot: Normal
Normal Boot
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc2(part 0) is current device
Failed to load 'boot.scr'
20052480 bytes read in 98 ms (195.1 MiB/s)
Booting from mmc ...
43490 bytes read in 17 ms (2.4 MiB/s)
## Flattened Device Tree blob at 43000000
Booting using the fdt blob at 0x43000000
Using Device Tree in place at 0000000043000000, end 000000004300d9e1

Starting kernel ...
arch/arm/lib/bootm.c->boot_jump_linux->343 ft_addr:43000000 ep:40480000 os.arch:22


print info:
baudrate=115200
board_name=EVK
board_rev=iMX8MM
boot_fit=no
bootcmd=mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; fi;
bootcmd_mfg=run mfgtool_args;if iminfo ${initrd_addr}; then if test ${tee} = yes; then bootm ${tee_addr} ${initrd_addr} ${fdt_addr}; else booti ${loadaddr} ${initrd_addr} ${fdt_addr}; fi; else echo "Run fastboot ..."; fastboot 0; fi;
bootdelay=2
bootm_size=0x10000000
bootscript=echo Running bootscript from mmc ...; source
bsp_bootcmd=echo Running BSP bootcmd ...; mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; fi;
bsp_script=boot.scr
console=ttymxc1,115200
emmc_dev=2
ethaddr=96:fc:32:7f:b2:1e
ethprime=FEC
fastboot_dev=mmc2
fdt_addr=0x43000000
fdt_addr_r=0x43000000
fdt_high=0xffffffffffffffff
fdtcontroladdr=fdf09d40
fdtfile=imx8mm-evk.dtb
image=Image
initrd_addr=0x43800000
initrd_high=0xffffffffffffffff
jh_clk=
jh_mmcboot=mw 0x303d0518 0xff; setenv fdtfile ${jh_root_dtb};setenv jh_clk clk_ignore_unused mem=1212MB; if run loadimage; then run mmcboot; else run jh_netboot; fi;
jh_netboot=mw 0x303d0518 0xff; setenv fdtfile ${jh_root_dtb}; setenv jh_clk clk_ignore_unused mem=1212MB; run netboot;
jh_root_dtb=imx8mm-evk-root.dtb
kboot=booti
kernel_addr_r=0x40480000
loadaddr=0x40480000
loadbootscript=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${bsp_script};
loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr_r} ${fdtfile}
loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}
mfgtool_args=setenv bootargs console=${console},${baudrate} rdinit=/linuxrc clk_ignore_unused
mmcargs=setenv bootargs ${jh_clk} ${mcore_clk} console=${console} root=${mmcroot}
mmcautodetect=yes
mmcboot=echo Booting from mmc ...; run mmcargs; if test ${boot_fit} = yes || test ${boot_fit} = try; then bootm ${loadaddr}; else if run loadfdt; then booti ${loadaddr} - ${fdt_addr_r}; else echo WARN: Cannot load the DT; fi; fi;
mmcdev=2
mmcpart=1
mmcroot=/dev/mmcblk2p2 rootwait rw
nandfit_part=yes
netargs=setenv bootargs ${jh_clk} ${mcore_clk} console=${console} root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp
netboot=echo Booting from net ...; run netargs; if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; ${get_cmd} ${loadaddr} ${image}; if test ${boot_fit} = yes || test ${boot_fit} = try; then bootm ${loadaddr}; else if ${get_cmd} ${fdt_addr_r} ${fdtfile}; then booti ${loadaddr} - ${fdt_addr_r}; else echo WARN: Cannot load the DT; fi; fi;
prepare_mcore=setenv mcore_clk clk-imx8mm.mcore_booted;
scriptaddr=0x43500000
sd_dev=1
serial#=153ab1aac640304b
soc_type=imx8mm
splashimage=0x50000000

Environment size: 2770/16380 bytes

0 Kudos
Reply
6 Replies

1,184 Views
Harvey021
NXP TechSupport
NXP TechSupport

Hi @jay_chen 

Based on these logs, would suggest double checking what you've modified, for example, related to BL31.

 

Best regards

Harvey

0 Kudos
Reply

1,109 Views
jay_chen
Contributor I
HI Harvey
能说下uboot22.04的配置么?
我使用的ATF、uboot 、kernel 版本都是lf-5.15.71-2.2.0
0 Kudos
Reply

1,085 Views
Harvey021
NXP TechSupport
NXP TechSupport

Hi 

针对lf-5.15.71-2.2.0具体的porting,可以参考这个文档:i.MX Porting Guide (nxp.com.cn)

 

Best regards

Harvey

0 Kudos
Reply

1,176 Views
jay_chen
Contributor I

Hi Harvey:

那像这种情况我怎么处理呢,ATF 我没有做任何操作,只是经行了编译

1 export ARCH=arm64
2 source /opt/fsl-imx-xwayland/4.14-sumo/environment-setup-aarch64-poky-linux
3 make realclean PLAT=imx8mm
4 LDFLAGS="" make PLAT=imx8mm all
这个是我的编译脚本

0 Kudos
Reply

1,169 Views
chen-wust
Contributor II

Could you please show me the node configuration of emmc in your uboot?
&usdhc3 &usdhc2

0 Kudos
Reply

1,166 Views
jay_chen
Contributor I

&usdhc2 {
assigned-clocks = <&clk IMX8MM_CLK_USDHC2>;
assigned-clock-rates = <200000000>;
pinctrl-names = "default", "state_100mhz", "state_200mhz";
pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
bus-width = <4>;
vmmc-supply = <&reg_usdhc2_vmmc>;
status = "okay";
};

&usdhc3 {
assigned-clocks = <&clk IMX8MM_CLK_USDHC3_ROOT>;
assigned-clock-rates = <400000000>;
pinctrl-names = "default", "state_100mhz", "state_200mhz";
pinctrl-0 = <&pinctrl_usdhc3>;
pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
bus-width = <8>;
non-removable;
status = "okay";
};

0 Kudos
Reply