|
@@ -179,11 +179,22 @@ extern struct device_node *of_find_compatible_node(struct device_node *from,
|
|
|
#define for_each_compatible_node(dn, type, compatible) \
|
|
|
for (dn = of_find_compatible_node(NULL, type, compatible); dn; \
|
|
|
dn = of_find_compatible_node(dn, type, compatible))
|
|
|
-extern struct device_node *of_find_matching_node(struct device_node *from,
|
|
|
- const struct of_device_id *matches);
|
|
|
+extern struct device_node *of_find_matching_node_and_match(
|
|
|
+ struct device_node *from,
|
|
|
+ const struct of_device_id *matches,
|
|
|
+ const struct of_device_id **match);
|
|
|
+static inline struct device_node *of_find_matching_node(
|
|
|
+ struct device_node *from,
|
|
|
+ const struct of_device_id *matches)
|
|
|
+{
|
|
|
+ return of_find_matching_node_and_match(from, matches, NULL);
|
|
|
+}
|
|
|
#define for_each_matching_node(dn, matches) \
|
|
|
for (dn = of_find_matching_node(NULL, matches); dn; \
|
|
|
dn = of_find_matching_node(dn, matches))
|
|
|
+#define for_each_matching_node_and_match(dn, matches, match) \
|
|
|
+ for (dn = of_find_matching_node_and_match(NULL, matches, match); \
|
|
|
+ dn; dn = of_find_matching_node_and_match(dn, matches, match))
|
|
|
extern struct device_node *of_find_node_by_path(const char *path);
|
|
|
extern struct device_node *of_find_node_by_phandle(phandle handle);
|
|
|
extern struct device_node *of_get_parent(const struct device_node *node);
|