aboutsummaryrefslogtreecommitdiff
path: root/include/dm/ofnode.h
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2023-09-26 08:14:42 -0600
committerTom Rini <trini@konsulko.com>2023-10-06 14:38:13 -0400
commit67fb2159fb3438359fa0fc3f8cb491ffe8d57c0f (patch)
tree6a61f1cb1fe3ecc763fac9bdb6b1ac17e67490e6 /include/dm/ofnode.h
parentc15862ffdd5f7797338808cf7645786109bcddc3 (diff)
downloadu-boot-67fb2159fb3438359fa0fc3f8cb491ffe8d57c0f.zip
u-boot-67fb2159fb3438359fa0fc3f8cb491ffe8d57c0f.tar.gz
u-boot-67fb2159fb3438359fa0fc3f8cb491ffe8d57c0f.tar.bz2
dm: core: Add a way to delete a node
Add a function to delete a node in an existing tree. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/dm/ofnode.h')
-rw-r--r--include/dm/ofnode.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/dm/ofnode.h b/include/dm/ofnode.h
index 7eb04ac..f1ee02c 100644
--- a/include/dm/ofnode.h
+++ b/include/dm/ofnode.h
@@ -1635,4 +1635,17 @@ int ofnode_copy_props(ofnode dst, ofnode src);
int ofnode_copy_node(ofnode dst_parent, const char *name, ofnode src,
ofnode *nodep);
+/**
+ * ofnode_delete() - Delete a node
+ *
+ * Delete a node from the tree
+ *
+ * @nodep: Pointer to node to delete (set to ofnode_null() on success)
+ * Return: 0 if OK, -ENOENT if the node does not exist, -EPERM if it is the root
+ * node (wWhich cannot be removed), -EFAULT if the tree is broken (to_remove is
+ * not a child of its parent),
+ *
+ */
+int ofnode_delete(ofnode *nodep);
+
#endif