On Fri, 2 Apr 2021 14:36:51 -0600, in gmane.comp.hardware.beagleboard.user
John Allwine <john-/83Ax2S01hhWk0Htik3J/
w...@public.gmane.org> wrote:
>That said I still don't fully understand the problem. Where is U-boot
>stored? I'm booting from a microSD card and using that card in one board
>works, but didn't when I switched to this other board. Does it not pull
>that data from the microSD card? Is it reading from the eMMC of the other
>board?
As I understand the process... Unless the boot-select button is held
down, recent images (mid-Jessie time-frame I believe) contain a u-Boot that
checks for the uSD card. So...
Without boot-select, the u-Boot on the eMMC is loaded. It then checks
for the presence of the uSD card, and then for a bootable system on that
card. If such is found, the uSD card is made primary and booting
/continues/ using the files found on the card. u-Boot is still the version
from the eMMC.
With the boot-select, the eMMC is completely bypassed and the uSD card
is made primary, and u-Boot searched for on the uSD card. If found, it is
loaded and continues booting using the uSD card.
I'm not certain of when the "u-Boot loads device tree" vs "kernel loads
device tree" change took place. If it was after the auto-uSD card boot
change, one has the potential to have an eMMC u-Boot that expects the
kernel to load device tree, while the kernel on the uSD expected u-Boot to
load them (or if the uSD card is old enough, an eMMC u-Boot that does load
device trees, running a kernel that expects to read the device tree files).
Periodic flashing of the eMMC with current images is probably
recommended, just to ensure the u-Boot image is up-to-date (and cleaning
out crud that might have accumulated on the eMMC <G> )
--
Dennis L Bieber