BBB fails to boot from SD card

I’ve been trying to boot the BBB off of an SD card with not much luck. I’m currently using two different SanDisk Ultra SD cards

  • a 32GB with Debian 12 (Bookworm)
  • a 256GB one with Debian 13 (Trixie)

Both fail for different reasons.

  • U-boot fails find any partitions on the 256GB SD card and just fails to boot
    failure_to_iterate.txt (1.8 KB)
  • U-boot loads initramfs from the 32GB caard, but fails to mount the rootfs on mmcblk0p3.
    failure_to_mount.txt (23.9 KB). For what it’s worth, u-boot can read the partition table and can list the contents of rootfs.

I also erased the boot partition on the eMMC after reading that an older version of u-boot might be interfering with the newer versions.

I’ve read that there might be a hardware issue with some of the SD cages. Not sure if that is my issue.

I also wonder if the eMMC boot blocks might be an issue here. I see two mmc1blkboot0 and mmc1blkboot1.

I have two other questions. In the case where the SD card partitions aren’t readable, I should conclude that uboot is being loaded from the eMMC instead. I guess that means I didn’t erase the eMMC completely, right?

Regarding the boot pins, does the value on the pins inform some hardware booting process? And does uboot take over from there? I guess my question is, do the boot pins impose restrictions on where the chip boots from? I ask because I’m considering to try booting over NFS or TFTP as a back up.

without the sdcard inserted, does the BBB try to boot? if no, then emmc is erased.

these are special boot partitions, BBB does not use them.

1 Like

It still tries to boot, so it seems it wasn’t erased. What I tried was something like the following

=> mmc erase {start} {number of blocks}

Maybe I should try this again when I know that u-boot is coming from the SD card.

Okay, so I have fully erased the eMMC. The board is only reading from the SD card. But u-boot doesn’t see any partitions to boot from on the SD.

On the host PC, I see all the right partitions, but

=> part list mmc 0

Shows nothing.

if you can boot to linux

sudo dd if=/dev/zero of= (emmc) bs=1M count=1

sudo sync

reboot

1 Like

This is the issue. I can’t boot linux. u-boot isn’t able to see the partitions on my SD card.

from uboot command line

mmc dev 0 1
mmc erase 0 0x4000

Wait, I don’t follow. This erases a portion of u-boot on the SD card, right? Why would I want to do that?

I tried it, and mmc dev 0 1 silently fails or at least doesn’t echo back. mmc erase 0 0x4000 does the same.

when uboot runs from emmc,

erased the emmc.

i did not have the sdcard installed, just to verify that i was working with the emmc.

Sorry, just getting back to this. That makes perfect sense. My issue now is that uboot doesn’t recognize any of the partitions on the SD card. I can see them on my host machine though.

The confusing thing is that before I erased the eMMC, uboot would see them just fine. I haven’t changed the way that I’m creating boot media: bb-imager to flash AM335x 11.7 2023-09-02 4GB microSD IoT to a 32GB SanDisk Ultra SD card.

i’ve never had any luck with bb-imager

i use rpi-imager, download the image, when selecting the image with rpi-imager, scroll to the bottom and select custom, then the image that you down loaded. then select the sdcard and write to it.

if your OS is linux you should be able to just install it with apt.

1 Like

No luck, after flashing with rpi-imager, I’m still unable to select any partitions to boot from on my SD card.

I’m totally stumped. At this point I’ve used a handful of different images with multiple imagers, and the only thing that works is that the SPL and u-boot console are loaded from the SD card.

Is there any form of virtualization between your mouse pointer and the microSD?

Try a different brand microSD.
Try a different microSD adapter.
Try a different USB port.. 4 vs, 3 vs, 2 etc..

I also use gnomes image writer, works pretty good from a downloaded file right click dump to disk..

If I understand the question, I don’t think so. All my work has been on my Ubuntu desktop, outside of a virtual environment.

I’ll need to buy some different microSD cards and report back. As I mentioned above, I’ve been using SanDisk Ultra SDHC/XC Class 10. I was flashing with two different adapters: a Canakit branded microSD USB adapter and a SanDisk microSD to SD card adapter.

perfect, i’ve seen issues with vmware/virtualbox/etc with usb flash transfers in the past..

I gave up a little on this one; after picking up a new BBB, it booted from the uSD without issue. Maybe while I was messing around with the old BBB I damaged it in some way.