---
 rtemsbsd/powerpc/include/linux/of.h |  2 ++
 rtemsbsd/sys/powerpc/compat.c       | 16 ++++++++++++++++
 2 files changed, 18 insertions(+)

diff --git a/rtemsbsd/powerpc/include/linux/of.h 
b/rtemsbsd/powerpc/include/linux/of.h
index 5ab543142..8ef046975 100644
--- a/rtemsbsd/powerpc/include/linux/of.h
+++ b/rtemsbsd/powerpc/include/linux/of.h
@@ -76,6 +76,8 @@ of_property_read_u32(const struct device_node *dn, const char 
*name, u32 *val)
        return (of_property_read_u32_array(dn, name, val, 1));
 }
 
+uint64_t of_read_number(const uint32_t *cell, int size);
+
 struct device_node *of_parse_phandle(struct device_node *dns,
     struct device_node *dn, const char *phandle_name, int index);
 
diff --git a/rtemsbsd/sys/powerpc/compat.c b/rtemsbsd/sys/powerpc/compat.c
index 2ff85f450..400eac578 100644
--- a/rtemsbsd/sys/powerpc/compat.c
+++ b/rtemsbsd/sys/powerpc/compat.c
@@ -121,6 +121,22 @@ of_find_compatible_node(struct device_node *dns, const 
struct device_node *dn,
        }
 }
 
+uint64_t
+of_read_number(const uint32_t *cell, int size)
+{
+       uint64_t number;
+
+       number = 0;
+
+       while (size > 0) {
+               number = (number << 32) | fdt32_to_cpu(*cell);
+               ++cell;
+               --size;
+       }
+
+       return (number);
+}
+
 struct device_node *
 of_parse_phandle(struct device_node *dns, struct device_node *dn,
     const char *phandle_name, int index)
-- 
2.12.3

_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to