summaryrefslogtreecommitdiffstats
path: root/include/libfdt.h
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2008-01-11 14:55:05 +1100
committerGerald Van Baren <vanbaren@cideas.com>2008-03-18 21:03:45 -0400
commit9eaeb07a7185d852c7aa10735ecd4e9edf24fb5d (patch)
treec805461c3e8e3e13372e918f0dd0ced4fa4571ea /include/libfdt.h
parentfdeb932b1c8a3b615463995c3452d30ee0b12a33 (diff)
downloadblackbird-obmc-uboot-9eaeb07a7185d852c7aa10735ecd4e9edf24fb5d.tar.gz
blackbird-obmc-uboot-9eaeb07a7185d852c7aa10735ecd4e9edf24fb5d.zip
libfdt: Add fdt_set_name() function
This patch adds an fdt_set_name() function to libfdt, mirroring fdt_get_name(). This is a r/w function which alters the name of a given device tree node. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'include/libfdt.h')
-rw-r--r--include/libfdt.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/include/libfdt.h b/include/libfdt.h
index 6c05236858..f634a9c8df 100644
--- a/include/libfdt.h
+++ b/include/libfdt.h
@@ -846,6 +846,32 @@ int fdt_add_mem_rsv(void *fdt, uint64_t address, uint64_t size);
int fdt_del_mem_rsv(void *fdt, int n);
/**
+ * fdt_set_name - change the name of a given node
+ * @fdt: pointer to the device tree blob
+ * @nodeoffset: structure block offset of a node
+ * @name: name to give the node
+ *
+ * fdt_set_name() replaces the name (including unit address, if any)
+ * of the given node with the given string. NOTE: this function can't
+ * efficiently check if the new name is unique amongst the given
+ * node's siblings; results are undefined if this function is invoked
+ * with a name equal to one of the given node's siblings.
+ *
+ * This function may insert or delete data from the blob, and will
+ * therefore change the offsets of some existing nodes.
+ *
+ * returns:
+ * 0, on success
+ * -FDT_ERR_NOSPACE, there is insufficient free space in the blob
+ * to contain the new name
+ * -FDT_ERR_BADOFFSET, nodeoffset did not point to FDT_BEGIN_NODE tag
+ * -FDT_ERR_BADMAGIC,
+ * -FDT_ERR_BADVERSION,
+ * -FDT_ERR_BADSTATE, standard meanings
+ */
+int fdt_set_name(void *fdt, int nodeoffset, const char *name);
+
+/**
* fdt_setprop - create or change a property
* @fdt: pointer to the device tree blob
* @nodeoffset: offset of the node whose property to change
OpenPOWER on IntegriCloud