From: Miao Yan Date: Thu, 28 Nov 2013 09:51:39 +0000 (+0800) Subject: common/fdt_support.c: avoid unintended return from fdt_fixup_memory_banks() X-Git-Tag: v2014.01-rc2~8 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=35940de1a6648c5adbb89d8f64ba9513bae5e063;p=u-boot common/fdt_support.c: avoid unintended return from fdt_fixup_memory_banks() fdt_fixup_memory_banks() will add and update /memory node in device tree blob. In the case that /memory node doesn't exist, after adding a new one, this function returns error. The correct behavior should be continuing to update its properties. Signed-off-by: Miao Yan --- diff --git a/common/fdt_support.c b/common/fdt_support.c index 1f0d8f5fe9..4e32b02aa2 100644 --- a/common/fdt_support.c +++ b/common/fdt_support.c @@ -400,10 +400,11 @@ int fdt_fixup_memory_banks(void *blob, u64 start[], u64 size[], int banks) nodeoffset = fdt_path_offset(blob, "/memory"); if (nodeoffset < 0) { nodeoffset = fdt_add_subnode(blob, 0, "memory"); - if (nodeoffset < 0) + if (nodeoffset < 0) { printf("WARNING: could not create /memory: %s.\n", fdt_strerror(nodeoffset)); - return nodeoffset; + return nodeoffset; + } } err = fdt_setprop(blob, nodeoffset, "device_type", "memory", sizeof("memory"));