On Wed, 2012-06-06 at 01:52 +0200, Alexander Graf wrote: > Phandles are the fancy device tree name for "pointer to another node". > To create a phandle property, we most likely want to reference to the > node we're pointing to by its path. So create a helper that allows > us to do so. > > Signed-off-by: Alexander Graf <ag...@suse.de> > --- > device_tree.c | 7 +++++++ > device_tree.h | 2 ++ > 2 files changed, 9 insertions(+), 0 deletions(-) > > diff --git a/device_tree.c b/device_tree.c > index b1dff4f..8e9262c 100644 > --- a/device_tree.c > +++ b/device_tree.c > @@ -162,6 +162,13 @@ int qemu_devtree_setprop_string(void *fdt, const char > *node_path, > return r; > } > > +int qemu_devtree_setprop_phandle(void *fdt, const char *node_path, > + const char *property, const char *string)
"string" is a bit of a misnomer for this argument, considering its a node_path. Maybe "target", or "target_node_path" > +{ > + uint32_t phandle = fdt_get_phandle(fdt, findnode_nofail(fdt, string)); > + return qemu_devtree_setprop_cell(fdt, node_path, property, phandle); > +} > + > int qemu_devtree_nop_node(void *fdt, const char *node_path) > { > int r; > diff --git a/device_tree.h b/device_tree.h > index 9db7f86..2e87c58 100644 > --- a/device_tree.h > +++ b/device_tree.h > @@ -31,6 +31,8 @@ int qemu_devtree_setprop_cell4(void *fdt, const char > *node_path, > uint32_t val2, uint32_t val3, uint32_t val4); > int qemu_devtree_setprop_string(void *fdt, const char *node_path, > const char *property, const char *string); > +int qemu_devtree_setprop_phandle(void *fdt, const char *node_path, > + const char *property, const char *string); > int qemu_devtree_nop_node(void *fdt, const char *node_path); > int qemu_devtree_add_subnode(void *fdt, const char *name); >