bootvx_fdt: fix missing 'fdt_fixup_ethernet(...)' on vxWorks boot
authorHannes Schmelzer <oe5hpm@oevsv.at>
Fri, 25 Aug 2017 12:27:37 +0000 (14:27 +0200)
committerTom Rini <trini@konsulko.com>
Mon, 28 Aug 2017 11:19:13 +0000 (07:19 -0400)
Before commit 26d6119 (fdt: Move fdt_fixup_ethernet to a common place)
the fdt_fixup_ethernet(...) was called during do_bootvx_fdt(...).

Afterwards the only (common) place for this fixup is during
image_setup_libfdt(...) and this is only called, at least on ARM
platform, from image_setup_linux(...).

All this ends up in the fact, that the fdt_fixup_ethernet(...) is only
called on booting a linux image and not on booting a vxWorks image.

We fix this with adding the fdt_fixup_ethernet(...) call again to
do_bootvx_fdt(...)

Signed-off-by: Hannes Schmelzer <oe5hpm@oevsv.at>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
common/bootm_os.c

index 1feea8a..31b1878 100644 (file)
@@ -276,6 +276,9 @@ void do_bootvx_fdt(bootm_headers_t *images)
                if (ret)
                        return;
 
+               /* Update ethernet nodes */
+               fdt_fixup_ethernet(*of_flat_tree);
+
                ret = fdt_add_subnode(*of_flat_tree, 0, "chosen");
                if ((ret >= 0 || ret == -FDT_ERR_EXISTS)) {
                        bootline = env_get("bootargs");