Before this commit, fdt_initrd() just returned if initrd start address is zero. But it is possible if the RAM is located at address 0.
This commit makes the return condition more reasonable: Just return if the size of initrd is zero. Signed-off-by: Masahiro Yamada <yamad...@jp.panasonic.com> --- common/fdt_support.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/common/fdt_support.c b/common/fdt_support.c index 5631f16..89119be 100644 --- a/common/fdt_support.c +++ b/common/fdt_support.c @@ -191,15 +191,15 @@ int fdt_initrd(void *fdt, ulong initrd_start, ulong initrd_end) int is_u64; uint64_t addr, size; + /* just return if the size of initrd is zero */ + if (initrd_start == initrd_end) + return 0; + /* find or create "/chosen" node. */ nodeoffset = fdt_find_or_add_subnode(fdt, 0, "chosen"); if (nodeoffset < 0) return nodeoffset; - /* just return if initrd_start/end aren't valid */ - if ((initrd_start == 0) || (initrd_end == 0)) - return 0; - total = fdt_num_mem_rsv(fdt); /* -- 1.8.3.2 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot