[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-ppc] [PATCH 07/25] dt: add helper for phandle allocation

From: Alexander Graf
Subject: [Qemu-ppc] [PATCH 07/25] dt: add helper for phandle allocation
Date: Wed, 30 May 2012 13:00:28 +0200

Phandle references work by having 2 pieces:

  - a "phandle" 1-cell property in the device tree node
  - a reference to the same value in a property we want to point
    to the other node

To generate the 1-cell property, we need an allocation mechanism that
gives us a unique number space. This patch adds an allocator for these

Signed-off-by: Alexander Graf <address@hidden>
 device_tree.c |    7 +++++++
 device_tree.h |    1 +
 2 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/device_tree.c b/device_tree.c
index d4f1f0a..317bdd0 100644
--- a/device_tree.c
+++ b/device_tree.c
@@ -220,6 +220,13 @@ int qemu_devtree_setprop_phandle(void *fdt, const char 
     return qemu_devtree_setprop_cell(fdt, node_path, property, phandle);
+uint32_t qemu_devtree_alloc_phandle(void *fdt)
+    static int phandle = 0x8000;
+    return 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 5464dc7..f37a4da 100644
--- a/device_tree.h
+++ b/device_tree.h
@@ -35,6 +35,7 @@ int qemu_devtree_setprop_string(void *fdt, const char 
 int qemu_devtree_setprop_phandle(void *fdt, const char *node_path,
                                  const char *property, const char *string);
 uint32_t qemu_devtree_get_phandle(void *fdt, const char *path);
+uint32_t qemu_devtree_alloc_phandle(void *fdt);
 int qemu_devtree_nop_node(void *fdt, const char *node_path);
 int qemu_devtree_add_subnode(void *fdt, const char *name);

reply via email to

[Prev in Thread] Current Thread [Next in Thread]