Imx8mp hummingboard fails to boot on eMMC

HI,

i created your default yocto image from build documentation for 5.10.
the generated image tmp/deploy/images/imx8mpsolidrun/imx-image-multimedia-imx8mpsolidrun-20230625115741.rootfs.wic.bz2 was flashed to the eMMC with the uuu tool:
uuu -b emmc_all tmp/deploy/images/imx8mpsolidrun/imx-image-multimedia-imx8mpsolidrun-20230625115741.rootfs.wic.bz2

when the board boots it gets stuck during the kernel boot:

U-Boot SPL 2021.04-lf_v2021.04+g8dd759cd4d (Nov 22 2021 - 01:39:23 +0000)
Ignore → Failed to find clock node. Check device tree … !!!
No pca9450@25
Training for 3GByte Micron
DDRINFO: start DRAM init
DDRINFO: DRAM rate 3000MTS
DDRINFO:ddrphy calibration done
DDRINFO: ddrmix config done
Normal Boot
WDT: Not found!
Trying to boot from BOOTROM
image offset 0x0, pagesize 0x200, ivt offset 0x0
Failed to find node!, err: -1!
Failed to find node!, err: -1!
NOTICE: BL31: v2.4(release):lf-5.10.72-2.2.0-0-g5782363f9
NOTICE: BL31: Built : 12:17:17, Nov 18 2021

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

CPU: i.MX8MP[8] rev1.1 1800 MHz (running at 1200 MHz)
CPU: Commercial temperature grade (0C to 95C) at 38C
Reset cause: POR
Model: NXP i.MX8MPlus LPDDR4 SolidRun board
DRAM: 3 GiB
MMC: FSL_SDHC: 1, FSL_SDHC: 2
Loading Environment from MMC… *** Warning - bad CRC, using default environment

[*]-Video Link 0probe video device failed, ret -2

[0] lcd-controller@32e80000, video
[1] mipi_dsi@32e60000, video_bridge
[2] adv7535@39, panel

probe video device failed, ret -2
In: serial
Out: serial
Err: serial

BuildInfo:

  • ATF 5782363

switch to partitions #0, OK
mmc2(part 0) is current device
flash target is MMC:2
Net:
Warning: ethernet@30bf0000 (eth1) using random MAC address - 82:25:35:94:45:ad
eth1: ethernet@30bf0000 [PRIME]
Fastboot: Normal
Normal Boot
Hit any key to stop autoboot: 0
MMC: no card present
switch to partitions #0, OK
mmc2(part 0) is current device
Scanning mmc 2:1…
Found /extlinux/extlinux.conf
Retrieving file: /extlinux/extlinux.conf
241 bytes read in 1 ms (235.4 KiB/s)
1: NXP i.MX Release Distro
Retrieving file: /extlinux/…/Image
26274304 bytes read in 565 ms (44.3 MiB/s)
append: root=/dev/mmcblk1p2 rootwait rw quiet console=ttymxc1,115200 rootwait rw console=ttymxc1,115200,115200
Retrieving file: /extlinux/…/imx8mp-hummingboard-pulse.dtb
61721 bytes read in 2 ms (29.4 MiB/s)
Moving Image from 0x40480000 to 0x40600000, end=41fa0000

Flattened Device Tree blob at 43000000

Booting using the fdt blob at 0x43000000
Using Device Tree in place at 0000000043000000, end 0000000043012118
probe video device failed, ret -2

Starting kernel …

[ 0.174200] samsung-hdmi-phy 32fdff00.hdmiphy: failed to get phy apb clk: -517
[ 0.174359] imx8-pcie-phy 32f00000.pcie-phy: failed to get imx pcie phy clock
[ 0.189336] reg-userspace-consumer power-m2-mpcie: Failed to get supplies: -517
[ 0.189384] reg-userspace-consumer power-usb-port1: Failed to get supplies: -517
[ 0.189427] reg-userspace-consumer power-usb-port2: Failed to get supplies: -517
[ 0.236508] imx-lcdifv3 32e80000.lcd-controller: No pix clock get: -517
[ 0.243853] imx-lcdifv3 32e90000.lcd-controller: No pix clock get: -517
[ 0.250819] imx-lcdifv3 32fc6000.lcd-controller: No irq get, ret=-517
[ 0.260960] imx-hdmi-pavi 32fc4000.hdmi-pai-pvi: No pvi clock get
[ 0.305770] sdhci-esdhc-imx 30b40000.mmc: voltage-ranges unspecified
[ 0.318063] imx-dsp-rproc 3b6e8000.dsp: Failed to get clock dsp_clk1
[ 0.324440] imx-dsp-rproc 3b6e8000.dsp: failed on imx_dsp_rproc_clk_get
[ 0.543069] samsung-hdmi-phy 32fdff00.hdmiphy: failed to get phy apb clk: -517
[ 0.568684] imx-lcdifv3 32fc6000.lcd-controller: No irq get, ret=-517
[ 0.589494] sdhci-esdhc-imx 30b40000.mmc: voltage-ranges unspecified
[ 0.597920] imx_sec_dsim_drv 32e60000.mipi_dsi: Failed to attach bridge: 32e60000.mipi_dsi
[ 0.606212] imx_sec_dsim_drv 32e60000.mipi_dsi: failed to bind sec dsim bridge: -19
[ 0.617714] imx6q-pcie 33800000.pcie: invalid resource
[ 1.615235] imx6q-pcie 33800000.pcie: failed to initialize host
[ 1.621177] imx6q-pcie 33800000.pcie: unable to add pcie port.

when booting from an SD card there is no problem and the kernel gets to the login prompt successfully.

the boot config switches is according to (tried all options):
https://solidrun.atlassian.net/wiki/spaces/developer/pages/287343073/HummingBoard+Pulse+and+Ripple+Boot+Select

please advise,
thanks.

would appreciate a reply.

thanks.

It looks like you have built a hardknott image. That BSP version only supported booting from uSDHC and has the extlinux.conf hard-coded to look at the mmcblk1 device. This is why eMMC boot is failing, it cannot find the root filesystem.

The kirkstone release has this fixed and is recommended since it is a Yocto long term support branch.

thanks for the information, i’ll build from kirkstone and try again.