Browse Source

[PATCH] powerpc: Add of_find_property function

Add an of_find_property function that returns a struct property
given a property name.  Then change the get_property function to
use that routine internally.

Signed-off-by: Dave Boutcher <sleddog@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Dave C Boutcher 19 years ago
parent
commit
ecaa8b0ff3
2 changed files with 16 additions and 6 deletions
  1. 13 6
      arch/powerpc/kernel/prom.c
  2. 3 0
      include/asm-powerpc/prom.h

+ 13 - 6
arch/powerpc/kernel/prom.c

@@ -1779,12 +1779,8 @@ static int __init prom_reconfig_setup(void)
 __initcall(prom_reconfig_setup);
 #endif
 
-/*
- * Find a property with a given name for a given node
- * and return the value.
- */
-unsigned char *get_property(struct device_node *np, const char *name,
-			    int *lenp)
+struct property *of_find_property(struct device_node *np, const char *name,
+				  int *lenp)
 {
 	struct property *pp;
 
@@ -1797,6 +1793,17 @@ unsigned char *get_property(struct device_node *np, const char *name,
 		}
 	read_unlock(&devtree_lock);
 
+	return pp;
+}
+
+/*
+ * Find a property with a given name for a given node
+ * and return the value.
+ */
+unsigned char *get_property(struct device_node *np, const char *name,
+			    int *lenp)
+{
+	struct property *pp = of_find_property(np,name,lenp);
 	return pp ? pp->value : NULL;
 }
 EXPORT_SYMBOL(get_property);

+ 3 - 0
include/asm-powerpc/prom.h

@@ -136,6 +136,9 @@ extern struct device_node *of_find_all_nodes(struct device_node *prev);
 extern struct device_node *of_get_parent(const struct device_node *node);
 extern struct device_node *of_get_next_child(const struct device_node *node,
 					     struct device_node *prev);
+extern struct property *of_find_property(struct device_node *np,
+					 const char *name,
+					 int *lenp);
 extern struct device_node *of_node_get(struct device_node *node);
 extern void of_node_put(struct device_node *node);