Merge tag 'dt-for-linus' of git://git.secretlab.ca/git/linux-2.6
[~shefty/rdma-dev.git] / include / linux / of.h
index 92cf6ad35e0ea01d33ab70ea3cb70394f96762e2..f02d8b2f799d114c21455b9cdd5d4561fe69463b 100644 (file)
@@ -72,19 +72,17 @@ struct of_phandle_args {
        uint32_t args[MAX_PHANDLE_ARGS];
 };
 
-#if defined(CONFIG_SPARC) || !defined(CONFIG_OF)
+#ifdef CONFIG_OF_DYNAMIC
+extern struct device_node *of_node_get(struct device_node *node);
+extern void of_node_put(struct device_node *node);
+#else /* CONFIG_OF_DYNAMIC */
 /* Dummy ref counting routines - to be implemented later */
 static inline struct device_node *of_node_get(struct device_node *node)
 {
        return node;
 }
-static inline void of_node_put(struct device_node *node)
-{
-}
-#else
-extern struct device_node *of_node_get(struct device_node *node);
-extern void of_node_put(struct device_node *node);
-#endif
+static inline void of_node_put(struct device_node *node) { }
+#endif /* !CONFIG_OF_DYNAMIC */
 
 #ifdef CONFIG_OF
 
@@ -217,6 +215,9 @@ extern int of_property_read_string(struct device_node *np,
 extern int of_property_read_string_index(struct device_node *np,
                                         const char *propname,
                                         int index, const char **output);
+extern int of_property_match_string(struct device_node *np,
+                                   const char *propname,
+                                   const char *string);
 extern int of_property_count_strings(struct device_node *np,
                                     const char *propname);
 extern int of_device_is_compatible(const struct device_node *device,