summaryrefslogtreecommitdiffstats
path: root/rtemsbsd/sys
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-01-17 14:14:10 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-01-23 14:54:50 +0100
commit44fca38058e84442940cad05a0a53696f2744729 (patch)
tree40ee3780ba4481b23946d5fe9cca64a2a2ee2163 /rtemsbsd/sys
parentlinux/of.h: Add of_n_size_cells() (diff)
downloadrtems-libbsd-44fca38058e84442940cad05a0a53696f2744729.tar.bz2
linux/of.h: Add of_read_number()
Update #3277.
Diffstat (limited to 'rtemsbsd/sys')
-rw-r--r--rtemsbsd/sys/powerpc/compat.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/rtemsbsd/sys/powerpc/compat.c b/rtemsbsd/sys/powerpc/compat.c
index 2ff85f45..400eac57 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)