Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 28 Feb 2014 06:42:46 -0700
From:      Ian Lepore <ian@FreeBSD.org>
To:        freebsd-arm <freebsd-arm@FreeBSD.org>
Subject:   A unified imx6 kernel config, old WANDBOARD-* configs going away
Message-ID:  <1393594966.1149.161.camel@revolution.hippie.lan>

next in thread | raw e-mail | index | archive | help
I've added a new imx6 unified kernel config named IMX6.  It has no
compiled-in fdt, and can boot all three flavors of Wandboard when u-boot
and ubldr load a dtb file.  Folks should start using it and eventually
the WANDBOARD* configs will go away when nobody needs them anymore.

I build ubldr to load at address 11000000 and let it load the kernel at
12000000.  (The kernel can load on any 1MB boundary, but ubldr doesn't
make use of that feature yet.)  ubldr will take a dtb file loaded by
u-boot and pass it along to the kernel.  Another option is to put
the .dtb file in your /boot/kernel or /boot/modules directory, and ubldr
will load it from there, using the filename set in the u-boot env var
fdt_file.

Unfortunately we can't do a single image that boots any wandboard,
because u-boot itself has to be different for each board.  This is what
my u-boot env looks like on each wandboard:

=> printenv
baudrate=115200
bootcmd=run ubnet
bootdelay=1
console=ttymxc0
fdt_file=wandboard-dual.dtb
loadaddr=11000000
loaderdev=net
ubmmc=fatload mmc 0 ${loadaddr} ubldr; bootelf
ubnet=dhcp ${loadaddr} /wand/boot/ubldr;bootelf

Environment size: 265/8188 bytes

The only thing that differs per-board is the fdt_file setting, and the
u-boot binary itself.  The "loaderdev=net" variable tells ubldr to load
the kernel from the network device rather than disk.  So now all my
different model wandboards boot the same kernel and run from the same
nfs root directory.

-- Ian





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1393594966.1149.161.camel>