FreeBSD 12 r312227 dont boots on Beaglebone black

Oleksandr Tymoshenko gonzo at bluezbox.com
Fri Jan 27 02:00:38 UTC 2017


Otacílio (otacilio.neto at bsd.com.br) wrote:
> Em 26/01/2017 22:31, Oleksandr Tymoshenko escreveu:
> > Otacílio (otacilio.neto at bsd.com.br) wrote:
> >> Em 25/01/2017 19:13, Oleksandr Tymoshenko escreveu:
> >>> Otacílio (otacilio.neto at bsd.com.br) wrote:
> >>>> Dears
> >>>>
> >>>> I'm trying boot a FreeBSD12-armv6-r312227
> >>>> (u-boot-beaglebone-2017.01.00.1) on a beaglebone black. The snapshot
> >>>> FreeBSD-12.0-CURRENT-arm-armv6-BEAGLEBONE-20170105-r311461.img that I
> >>>> downloaded from
> >>>> ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/arm/armv6/ISO-IMAGES/12.0/
> >>>> works fine, but when I try boot the image that I build on my machine
> >>>> using crouchet I get:
> >>>>
> >>>> U-Boot SPL 2017.01-rc3 (Jan 22 2017 - 23:17:18)
> >>>> Trying to boot from MMC1MMC partition switch failed
> >>>> *** Warning - MMC partition switch failed, using default environment
> >>>>
> >>>> reading u-boot.img
> >>>> reading u-boot.img
> >>>>
> >>>> And boot stops. Someone can confirm that the revision 312227 is working
> >>>> fine?
> >>> I did some digging at the breakage is caused by this commit in U-Boot:
> >>> https://www.mail-archive.com/u-boot@lists.denx.de/msg234317.html
> >>>
> >>> Crochet is using FAT12 for Beaglebone Black. Switching to FAT16 fixes
> >>> the problem. Try applying this patch to crochet and re-build image:
> >>>
> >>> https://people.freebsd.org/~gonzo/patches/crochet-bbb-fat16.diff
> >>>
> >> I have applied the patch and now I'm getting this error. Some hints?
> > FreeBSD uses dtb names that do not match upstream ones. After updating
> > to 2017.01 that change was lost in progress. Possible workaround (HACK
> > ALERT!!!) would be to do something like this:
> >
> > => setenv findfdt 'setenv fdtfile beaglebone-black.dtb'
> > => saveenv
> >
> > Copy-paste to U-Boot serial console does not work for me on BBB, so
> > you'll have have to enter these commands
> >
> > I will submit update to u-boot ports so all these workarounds will
> > not be required.
> >
> I'm getting this:
> 
> Type '?' for a list of commands, 'help' for more detailed help.
> loader> setenv findfdt 'setenv fdtfile beaglebone-black.dtb'
> Error: stack underflow
> loader>

No, setenv/saveenv should be done in u-boot. But this gave me
an idea. You can also mount root partition on SD card and 
add following line to /boot/loader.conf:

fdt_file="beaglebone-black.dtb"

That should do the trick as well

-- 
gonzo


More information about the freebsd-arm mailing list