6
votes

I have a Beaglebone Black industrial(BBBI), which I assume is very similar to the Beaglebone Black.

I wish to make the BBBI boot to microSD card by default, and I found this guide, which suggested to delete the MLO file from the boot partition. This has been mentioned in a few places based on Google, so I assume it is worth trying

With the intention of renaming the MLO file, I tried to locate the file using $locate, after booting without a microSD card, which presumably boots into Debain on the eMMC. This produces the following:

/opt/backup/uboot/MLO
/opt/source/pru-software-support-package/pru_cape/bin/MLO
/opt/source/pru-software-support-package/pru_cape/bin/MLO/beaglebone
/opt/source/pru-software-support-package/pru_cape/bin/MLO/beaglebone_black
/opt/source/pru-software-support-package/pru_cape/bin/MLO/beaglebone_black/MLO
/opt/source/pru-software-support-package/pru_cape/bin/MLO/beaglebone/MLO

I have double checked that /boot does not have MLO. Is anybody able to share where the MLO is, or did I missed something very obvious?

Alternatively, is there an easier way to boot from the microSD card without pressing the S2 button?

2

2 Answers

4
votes

Newer images put MLO outside the filesystems, directly at several "magic" offsets on the eMMC/SD-card. That's documented in the TRM for AM335x.

If you don't care about current eMMC contents, something like this will do the brute force job:

dd if=/dev/zero of=/dev/mmcblk0 bs=1M count=1
(make sure mmcblk0 is the eMMC, not the SD card, it changes if you boot from SD and can be mmcblk1 too)

It wipes out the first Megabyte of the eMMC with zeroes. So the partition table and other things are gone too. Essentially you get a blank eMMC.

If you want to be a bit more surgical, look at the flashing script in /opt/scripts. Also functions.sh is interesting.

Note that MLO is also referred to as SPL.

0
votes

Try editing the uenv.txt file to load the image from the SDCARD always.