/memreserve in the barebox device tree is a special node used to hold the reserved memory entries in the FDT until the DT is unflattened again. To avoid conflicts with an actual device tree node called /memreserve, let's prefix with '$', the character newly chosen to mark barebox-specific nodes and properties. Signed-off-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> --- drivers/of/fdt.c | 14 ++++++-------- drivers/of/reserved-mem.c | 2 +- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c index 6f10094143cd..6c554af61f6f 100644 --- a/drivers/of/fdt.c +++ b/drivers/of/fdt.c @@ -92,7 +92,7 @@ static int of_reservemap_num_entries(const struct fdt_header *fdt) * @fdt - the flattened device tree blob * * This stores the memreserve entries from the dtb in a newly created - * /memserve node in the unflattened device tree. The device tree + * /$memreserve node in the unflattened device tree. The device tree * flatten code moves the entries back to the /memreserve/ area in the * flattened tree. * @@ -109,7 +109,7 @@ static int of_unflatten_reservemap(struct device_node *root, if (n <= 0) return n; - memreserve = of_new_node(root, "memreserve"); + memreserve = of_new_node(root, "$memreserve"); if (!memreserve) return -ENOMEM; @@ -462,7 +462,7 @@ static inline int dt_add_string(struct fdt *fdt, const char *str) return ret; } -static int __of_flatten_dtb(struct fdt *fdt, struct device_node *node, int is_root) +static int __of_flatten_dtb(struct fdt *fdt, struct device_node *node) { struct property *p; struct device_node *n; @@ -500,10 +500,8 @@ static int __of_flatten_dtb(struct fdt *fdt, struct device_node *node, int is_ro list_for_each_entry(n, &node->children, parent_list) { if (is_reserved_name(n->name)) continue; - if (is_root && !strcmp(n->name, "memreserve")) - continue; - ret = __of_flatten_dtb(fdt, n, 0); + ret = __of_flatten_dtb(fdt, n); if (ret) return ret; } @@ -553,11 +551,11 @@ void *of_flatten_dtb(struct device_node *node) fdt.dt_nextofs = ofs; - ret = __of_flatten_dtb(&fdt, node, 1); + ret = __of_flatten_dtb(&fdt, node); if (ret) goto out_free; - memreserve = of_find_node_by_name_address(node, "memreserve"); + memreserve = of_find_node_by_name_address(node, "$memreserve"); if (memreserve) { const void *entries = of_get_property(memreserve, "reg", &len); diff --git a/drivers/of/reserved-mem.c b/drivers/of/reserved-mem.c index 599a7c968afd..b278026617ac 100644 --- a/drivers/of/reserved-mem.c +++ b/drivers/of/reserved-mem.c @@ -52,7 +52,7 @@ static int of_reserved_mem_walk(void) } } - node = of_find_node_by_path("/memreserve"); + node = of_find_node_by_path("/$memreserve"); reg = of_get_property(node, "reg", &ncells); ncells /= sizeof(__be32); if (reg) { -- 2.39.5