libfdt: Enhanced and published fdt_next_tag()
Enhanced the formerly private function _fdt_next_tag() to allow stepping
through the tree, used to produce a human-readable dump, and made
it part of the published interface.
Also added some comments.
diff --git a/libfdt/fdt_rw.c b/libfdt/fdt_rw.c
index 7396645..b33fbf4 100644
--- a/libfdt/fdt_rw.c
+++ b/libfdt/fdt_rw.c
@@ -145,7 +145,7 @@
int namestroff;
int err;
- tag = _fdt_next_tag(fdt, nodeoffset, &nextoffset);
+ tag = fdt_next_tag(fdt, nodeoffset, &nextoffset, NULL);
if (tag != FDT_BEGIN_NODE)
return -FDT_ERR_BADOFFSET;
@@ -219,10 +219,10 @@
return offset;
/* Try to place the new node after the parent's properties */
- _fdt_next_tag(fdt, parentoffset, &nextoffset); /* skip the BEGIN_NODE */
+ fdt_next_tag(fdt, parentoffset, &nextoffset, NULL); /* skip the BEGIN_NODE */
do {
offset = nextoffset;
- tag = _fdt_next_tag(fdt, offset, &nextoffset);
+ tag = fdt_next_tag(fdt, offset, &nextoffset, NULL);
} while (tag == FDT_PROP);
nh = _fdt_offset_ptr(fdt, offset);