Kernel boot from eMMC through uboot

Hey, I have tried booting linux image in the eMMC through u-boot but it always drops to busybox shell. As suggested by the busybox shell I double checked the PARTUUID using blkid it’s a match so why can’t it load the rfs?

My emmc has a single partition debian image. U-boot lies in the first partiition of my sd card(boot by pressing s2 switch.Here are my logs,uEnv.txt.

Standalone beaglebone boots just fine that is without my u-boot and sd card not inserted it boots fine from the emmc(which means emmc image is good) just when I try uboot from sd card this happensEnter code here


finduuid=part uuid mmc 1:1 uuid
netargs=setenv bootargs console=ttyO0,115200n8 root=UUID=aa9109fe-2099-47e0-b8a5-e1a3f87848b0 rootwait rw rootfstype=ext4 rootwait coherent_pool=1M net.ifnames=0 quiet
netboot=echo Booting from emmc …; setenv autoload no ;echo moving zimage from emmc to DRAM…;load mmc 1:1 ${loadaddr} /boot/vmlinuz-4.14.71-ti-r80;echo moving dtb from emmc to DRAM… ; load mmc 1:1 ${fdtaddr} /boot/dtbs/4.14.71-ti-r80/am335x-boneblack-uboot-univ.dtb ; echo moving initrd from emmc to DRAM…;load mmc 1:1 ${initramaddr} /boot/initrd.img-4.14.71-ti-r80;echo running netargs …; run netargs ; echo bootzzzz…;bootz ${loadaddr} ${initramaddr}:${initrdsize} ${ftdaddr}
uenvcmd=echo running netboot…;run netboot



Starting kernel …

[ 0.002066] timer_probe: no matching timers found

[ 1.132460] wkup_m3_ipc 44e11324.wkup_m3_ipc: could not get rproc handle

[ 1.444765] omap_voltage_late_init: Voltage driver support not added

[ 1.452379] PM: Cannot get wkup_m3_ipc handle

Gave up waiting for root file system device. Common problems:

  • Boot args (cat /proc/cmdline)

  • Check rootdelay= (did the system wait long enough?)

  • Missing modules (cat /proc/modules; ls /dev)

ALERT! PARTUUID=8fb410a9-01 does not exist. Dropping to a shell!


/dev/mmcblk1p1: LABEL=“rootfs” UUID=“aa9109fe-2099-47e0-b8a5-e1a3f87848b0” TYPE=“ext4” PARTUUID=“8fb410a9-01”



/etc/fstab: static file system information.

"am335x-boneblack-uboot-univ.dtb" is the base dtb that u-boot will use
to build all final "Bone Black Compatible" devices, with
cape-universal enabled.

This "base" does not include the eMMC.

Simple solution just use: "am335x-boneblack.dtb"


Hi Robert, So basically I need to pull the file am335x-boneblack.dts and build the am335x-boneblack.dtb ? Am I right ? and just boot with am335x-boneblack.dtb

 dtc -I dts -O dtb -o am335x-boneblack.dtb am335x-boneblack.dts