
At present dm_test_ofnode_root() does this manually. Add some inline functions to handle it, so this code can be centralised.
Signed-off-by: Simon Glass sjg@chromium.org ---
include/dm/ofnode.h | 31 +++++++++++++++++++++++++++++++ test/dm/ofnode.c | 4 ++-- 2 files changed, 33 insertions(+), 2 deletions(-)
diff --git a/include/dm/ofnode.h b/include/dm/ofnode.h index e879feab002..d8d5082806e 100644 --- a/include/dm/ofnode.h +++ b/include/dm/ofnode.h @@ -238,6 +238,37 @@ static inline oftree oftree_default(void) return tree; }
+/** + * oftree_from_np() - Returns an oftree from a node pointer + * + * @root: Root node of the tree + * Returns: reference to the given node + */ +static inline oftree oftree_from_np(struct device_node *root) +{ + oftree tree; + + tree.np = root; + + return tree; +} + +/** + * oftree_from_fdt() - Returns an oftree from a flat device tree pointer + * + * @fdt: Device tree to use + * + * Returns: reference to the given node + */ +static inline oftree oftree_from_fdt(void *fdt) +{ + oftree tree; + + tree.fdt = fdt; + + return tree; +} + /** * ofnode_name_eq() - Check if the node name is equivalent to a given name * ignoring the unit address diff --git a/test/dm/ofnode.c b/test/dm/ofnode.c index a36fd104048..7f195a725a0 100644 --- a/test/dm/ofnode.c +++ b/test/dm/ofnode.c @@ -518,9 +518,9 @@ static int dm_test_ofnode_root(struct unit_test_state *uts) ut_assertok(make_ofnode_fdt(uts, fdt, sizeof(fdt))); if (of_live_active()) { ut_assertok(unflatten_device_tree(fdt, &root)); - tree.np = root; + tree = oftree_from_np(root); } else { - tree.fdt = fdt; + tree = oftree_from_fdt(fdt); }
/* Make sure they don't work on this new tree */