[U-Boot] [PATCH] wandboard: add pxe support, set default boot command like highbank

Dennis Gilmore dennis at ausil.us
Wed Aug 7 01:11:25 CEST 2013


On Tue, 6 Aug 2013 17:42:31 -0400
Tom Rini <trini at ti.com> wrote:

> On Tue, Aug 06, 2013 at 11:22:22AM -0500, Dennis Gilmore wrote:
> 
> [snip]
> > The only way I could see having us write a file to disk with the
> > environment working is if all boards implement standard variable to
> > define the memory locations and that is compiled into the u-boot
> > binary.
> > 
> > some variables that would need to be compiled in 
> > 
> > fdt_addr
> > fdt_addr_r
> 
> Why two?
from cmd_pxe.c
/*
 * fdt usage is optional:
 * It handles the following scenarios. All scenarios are exclusive
 *
 * Scenario 1: If fdt_addr_r specified and "fdt" label is defined in
 * pxe file, retrieve fdt blob from server. Pass fdt_addr_r to bootm,
 * and adjust argc appropriately.
 *
 * Scenario 2: If there is an fdt_addr specified, pass it along to
 * bootm, and adjust argc appropriately.
 *
 * Scenario 3: fdt blob is not available.
 */

u-boot by default would load a dtb to fdt_addr but a user could at
least in the pxe/extlinux case load their own dtb if the want/need to.

the only way a dtb would be optional is if fdtfile is not set 

> > kernel_addr_r
> > ramdisk_addr_r
> > pxefile_addr_r
> > scr_addr_r
> > uenv_addr_r
> > 
> > this should allow for for people to use boot.scr uEnv.txt or
> > pxe/extlinux 
> 
> This is what I think we need to work towards.  A board opting into
> this standard must set CONFIG_CMD_A/B/C (or maybe we add a
> CONFIG_SUPPORT_GENERIC_LINUX_DISTRO that does this in one of the
> fallback files, whatever) and provide the following variables PLUS a,
> and this needs some thinking I think, auto-boot tries to load said
> file from ... ?
> 
> We cannot provide a built-in environment that works for every distro
> and case, we want the distro to tell us things it knows, and we'll
> tell it what it can't easily know.

we absolutely can, I would like for u-boot to load a dtb before doing
anything. u-boot should know what devices can be booted from and likely
an order of preference. i.e. removable media through to fixed, and
finally pxe. 

i would like for u-boot to first try to
load /boot/extlinux/extlinux.conf then /extlinux/extlinux.conf 
failing that try to load a /boot/uEnv.txt then /uEnv.txt and import that
running with what is in it, then falling back to a /boot/boot.scr
then /boot.scr then finally running dhcp, pxe get, and pxe boot.

its then up to the distro to provide one of the 3 configs to boot. or
the system falls back to pxe and a network boot/install is done.

Dennis


More information about the U-Boot mailing list