[U-Boot] [PATCH 0/5] Add device tree support for VxWorks

Wolfgang Denk wd at denx.de
Tue Sep 17 08:14:36 CEST 2013


Dear Myan,

In message <5237BB0B.1000309 at windriver.com> you wrote:
> Hello Wolfgang,
> 
> > You intend to 1) just keep the existing 'bootvx' command for
> > compatibility with older VxWorks versions, and 2) use plain 'bootm'
> > for new versions, like we do for other OSes?
> 
> 
> Yes, this is what I intended to implement, sorry for not being
> more clear. The pesdo-code is like this:
> 
>    int do_bootm_vxworks(bootm_headers_t *images)
>    {
>        if (images->ft_addr)
>           do_bootvx_fdt(images);
>        else
>           do_bootvx(NULL, 0, 0, NULL);
>    }
> 
> So 'bootm' works with new versions of VxWorks if device tree blob
> is provided, otherwise it falls back to 'bootvx'.

I think this is not a good idea, for two reasons.

First, it means the behaviour of the "bootm" command is not
consistent - with FDT address passed as argument it behaves one way,
without it behaves different.

Second, You may want to support images that have the FDT attached or
embedded or similar - maybe not now, but I bet such requests will pop
up.  You cannot do this in your code.

> The original idea was to separate 'bootvx' from 'bootm' entirely,
> but I am not sure how many users out there that depend on the old
>   behavior, so I am inclined to keep it and not break anyone.

If there is no way to inquire from the image itself wether it is one
with FDT support or not (we might even assign a new IH_OS_ type for
the new ones?), then it would probably be better to make "bootm"
support only the new FDT aware images, and keep "bootvx" as
compatibility command to boot older images.

On the other hand - what exactly is the difference between both boot
ways to start an image?  Does the additional address passed for the
FDT really hurt old style images, so do we need the differentiation at
all?

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Any technology distinguishable from magic is insufficiently advanced.


More information about the U-Boot mailing list