boot stuck at "waiting for root device" : Beagle Bone Black

8,974

The Issue was in the uEnv.txt file, where in I had left the variables root and rootfstype to be picked from the uboot environment. When i provided a custom value to them, I get the desired result.

In the Last line of the uEnv.txt that I posted ,change

root=/dev/mmcblk0p2 <-microSD Card , Second Partition
rootfstype=ext4    <- The type of Rootfs you build, I used buildroot with ext4 settings
Share:
8,974

Related videos on Youtube

Alex
Author by

Alex

Updated on September 18, 2022

Comments

  • Alex
    Alex almost 2 years

    I tried booting a mainline kernel onto a Beagle Bone Black, The compilation went fine, and I have the zImage , on the uboot front I have the MLO and the u-boot.img files.

    I am following instructions from elinux. http://elinux.org/Building_for_BeagleBone

    Now when I start the board up, Holding S2 which forces boot from microSD card, I have my uboot prompt and the kernel is also picked up and loaded, but the boot procedure gets stuck here.

    [    1.645505] Waiting for root device ... 
    [    1.654437] mmc1: new high speed MMC card at address 0001
    [    1.660920] mmcblk1: mmc1:0001 S10004 3.56 GiB 
    [    1.666011] mmcblk1boot0: mmc1:0001 S10004 partition 1 4.00 MiB 
    [    1.672479] mmcblk1boot1: mmc1:0001 S10004 partition 2 4.00 MiB 
    [    1.679915]  mmcblk1: p1 p2
    

    mmcblk1 has to be the onboard mmc memory module and mmcblko is the card I am booting from.

    1.542889] mmc0: host does not support reading read-only switch, assuming write-enable

    [    1.554351] mmc0: new high speed SDHC card at address aaaa
    [    1.561019] mmcblk0: mmc0:aaaa SS08G 7.40 GiB  <-- Size match 
    [    1.567951]  mmcblk0: p1 p2
    

    The uEnv.txt file contents are as follows.

    bootdir=                                                         
    bootfile=zImage 
    fdtfile=am335x-boneblack.dtb
    loadaddr=0x80007fc0
    fdtaddr=0x80F80000
    loadfdt=fatload mmc 0:1 ${fdtaddr} ${fdtfile}
    loaduimage=fatload mmc 0:1 ${loadaddr} ${bootfile}     
    uenvcmd=mmc rescan; run loaduimage; run loadfdt; run fdtboot
    fdtboot=run mmc_args; run mmcargs; bootz ${loadaddr} - ${fdtaddr}
    mmc_args=setenv bootargs console=${console} ${optargs} root=${mmcroot}
    rootfstype=${mmcrootfstype}
    

    I can give further logs as required,as they will take too much space here and pastebin is not a long term solution if this question is to help others.