public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v2 04/10] fdt: Add fdt_getprop_u32_default helpers
@ 2008-10-23 12:58 Kumar Gala
  2008-10-23 12:58 ` [U-Boot] [PATCH v2 05/10] fdt: Added helper to set PCI dma-ranges property Kumar Gala
  2008-10-23 13:08 ` [U-Boot] [PATCH v2 04/10] fdt: Add fdt_getprop_u32_default helpers Jerry Van Baren
  0 siblings, 2 replies; 4+ messages in thread
From: Kumar Gala @ 2008-10-23 12:58 UTC (permalink / raw)
  To: u-boot

Add helper functions to return find a node and return it's property
or a default value.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
---
 common/fdt_support.c  |   27 +++++++++++++++++++++++++++
 include/fdt_support.h |    2 ++
 2 files changed, 29 insertions(+), 0 deletions(-)

diff --git a/common/fdt_support.c b/common/fdt_support.c
index 8ceeb0f..f430777 100644
--- a/common/fdt_support.c
+++ b/common/fdt_support.c
@@ -35,6 +35,33 @@
  */
 DECLARE_GLOBAL_DATA_PTR;
 
+/**
+ * fdt_getprop_u32_default - Find a node and return it's property or a default
+ *
+ * @fdt: ptr to device tree
+ * @path: path of node
+ * @prop: property name
+ * @dflt: default value if the property isn't found
+ *
+ * Convenience function to find a node and return it's property or a
+ * default value if it doesn't exist.
+ */
+u32 fdt_getprop_u32_default(void *fdt, const char *path, const char *prop,
+				const u32 dflt)
+{
+	const u32 *val;
+	int off;
+
+	off = fdt_path_offset(fdt, path);
+	if (off < 0)
+		return dflt;
+
+	val = fdt_getprop(fdt, off, prop, NULL);
+	if (val)
+		return *val;
+	else
+		return dflt;
+}
 
 /**
  * fdt_find_and_setprop: Find a node and set it's property
diff --git a/include/fdt_support.h b/include/fdt_support.h
index ceaadc2..816c9d0 100644
--- a/include/fdt_support.h
+++ b/include/fdt_support.h
@@ -28,6 +28,8 @@
 
 #include <fdt.h>
 
+u32 fdt_getprop_u32_default(void *fdt, const char *path, const char *prop,
+				const u32 dflt);
 int fdt_chosen(void *fdt, int force);
 int fdt_initrd(void *fdt, ulong initrd_start, ulong initrd_end, int force);
 void do_fixup_by_path(void *fdt, const char *path, const char *prop,
-- 
1.5.5.1

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-10-23 13:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-10-23 12:58 [U-Boot] [PATCH v2 04/10] fdt: Add fdt_getprop_u32_default helpers Kumar Gala
2008-10-23 12:58 ` [U-Boot] [PATCH v2 05/10] fdt: Added helper to set PCI dma-ranges property Kumar Gala
2008-10-23 13:11   ` Jerry Van Baren
2008-10-23 13:08 ` [U-Boot] [PATCH v2 04/10] fdt: Add fdt_getprop_u32_default helpers Jerry Van Baren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox