[U-Boot] [PATCH v3] bootvx_fdt: fix missing 'fdt_fixup_ethernet(...)' on vxWorks boot
Hannes Schmelzer
oe5hpm at oevsv.at
Fri Aug 25 12:27:37 UTC 2017
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 at oevsv.at>
---
Changes in v3:
- cosmetic changes (coding style)
Changes in v2:
- restore original behaviour from
b3b522f247d3f19c4f2309ab0e6a02b3dd82de45 with moving the
fdt_fixup_ethernet(...) call after boot_relocate_fdt(...)
common/bootm_os.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/common/bootm_os.c b/common/bootm_os.c
index 1feea8a..31b1878 100644
--- a/common/bootm_os.c
+++ b/common/bootm_os.c
@@ -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");
--
2.7.4
More information about the U-Boot
mailing list