]> Pileus Git - ~andy/linux/blobdiff - include/linux/of.h
Merge tag 'dt-for-3.7' of git://sources.calxeda.com/kernel/linux
[~andy/linux] / include / linux / of.h
index fabb524d3d755e029536c518a447b9a5dd979753..f594c528842fece04fc6931d627f0b34bf6ca931 100644 (file)
@@ -190,12 +190,19 @@ extern struct device_node *of_get_parent(const struct device_node *node);
 extern struct device_node *of_get_next_parent(struct device_node *node);
 extern struct device_node *of_get_next_child(const struct device_node *node,
                                             struct device_node *prev);
+extern struct device_node *of_get_next_available_child(
+       const struct device_node *node, struct device_node *prev);
+
 extern struct device_node *of_get_child_by_name(const struct device_node *node,
                                        const char *name);
 #define for_each_child_of_node(parent, child) \
        for (child = of_get_next_child(parent, NULL); child != NULL; \
             child = of_get_next_child(parent, child))
 
+#define for_each_available_child_of_node(parent, child) \
+       for (child = of_get_next_available_child(parent, NULL); child != NULL; \
+            child = of_get_next_available_child(parent, child))
+
 static inline int of_get_child_count(const struct device_node *np)
 {
        struct device_node *child;