dm: core: Add a way to copy a node

Add a function to copy a node to another place under a new name. This is
useful at least for testing, since copying a test node with existing
properties is easier than writing the code to generate it all afresh.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2023-09-26 08:14:41 -06:00
committed by Tom Rini
parent e0c3c21d8b
commit c15862ffdd
3 changed files with 98 additions and 0 deletions

View File

@@ -1620,4 +1620,19 @@ int ofnode_add_subnode(ofnode parent, const char *name, ofnode *nodep);
*/
int ofnode_copy_props(ofnode dst, ofnode src);
/**
* ofnode_copy_node() - Copy a node to another place
*
* If a node with this name already exists in dst_parent, this returns an
* .error
*
* @dst_parent: Parent of the newly copied node
* @name: Name to give the new node
* @src: Source node to copy
* @nodep: Returns the new node, or the existing node if there is one
* Return: 0 if OK, -EEXIST if dst_parent already has a node with this parent
*/
int ofnode_copy_node(ofnode dst_parent, const char *name, ofnode src,
ofnode *nodep);
#endif