I've tried updating a beagle bone black using bsd.rd, but couldn't
get it to boot. Is there a way of doing this? I ended up reinstalling
from scratch since the system was mostly using a stock config and
I had to jump over the time_t bump. But in the future I'd like to
have a mechanism to update to a newer snapshot without reinstalling.

After converting bsd.rd to bsd.umg, using the command

  mkuboot -a arm -o linux -e 0x80300000 -l 0x80300000 bsd.rd bsd.umg

I tried booting via TFTP, which failed as follows:

[[[
TFTP from server 217.197.84.33; our IP address is 217.197.84.45
Filename 'bsd.umg'.
Load address: 0x80300000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         ###################
         822.3 KiB/s
done
Bytes transferred = 4084736 (3e5400 hex)
U-Boot# bootm 0x80300000
## Booting kernel from Legacy Image at 80300000 ...
   Image Name:   boot
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4084672 Bytes = 3.9 MiB
   Load Address: 80300000
   Entry Point:  80300000
   Verifying Checksum ... OK
   XIP Kernel Image ... OK
OK

Starting kernel ...

data abort

    MAYBE you should read doc/README.arm-unaligned-accesses
]]]

I also tried booting the bsd.umg file from the MSDOS partition,
by copying it there as bsdrd.umg and tweaking the uenv.txt file
to load that kernel:

  bootcmd=mmc rescan ; setenv loadaddr 0x82800000 ; setenv bootargs 
sd0i:/bsdrd.um
g ; fatload mmc 0 ${loadaddr} bsdrd.umg ; bootm ${loadaddr} ;
  uenvcmd=boot

In this case, the system would just hang after printing the text
below, and I had to power-cycle it.

[[[
SD/MMC found on device 0
reading uEnv.txt
155 bytes read in 3 ms (49.8 KiB/s)
Loaded environment from uEnv.txt
Importing environment from mmc ...
Running uenvcmd ...
reading bsdrd.umg
4084736 bytes read in 472 ms (8.3 MiB/s)
## Booting kernel from Legacy Image at 82800000 ...
   Image Name:   boot
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4084672 Bytes = 3.9 MiB
   Load Address: 80300000
   Entry Point:  80300000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK

Starting kernel ...
]]]

Any hints?

Reply via email to