of: Add of_phandle_args_equal() helper
[sfrench/cifs-2.6.git] / include / linux / of.h
index 6a9ddf20e79abdf0341f0cf6210e5991231eeab8..85bcc05b278d589e053e9ced9df3a463c2588285 100644 (file)
@@ -1065,6 +1065,22 @@ static inline int of_parse_phandle_with_optional_args(const struct device_node *
                                            0, index, out_args);
 }
 
+/**
+ * of_phandle_args_equal() - Compare two of_phandle_args
+ * @a1:                First of_phandle_args to compare
+ * @a2:                Second of_phandle_args to compare
+ *
+ * Return: True if a1 and a2 are the same (same node pointer, same phandle
+ * args), false otherwise.
+ */
+static inline bool of_phandle_args_equal(const struct of_phandle_args *a1,
+                                        const struct of_phandle_args *a2)
+{
+       return a1->np == a2->np &&
+              a1->args_count == a2->args_count &&
+              !memcmp(a1->args, a2->args, sizeof(a1->args[0]) * a1->args_count);
+}
+
 /**
  * of_property_count_u8_elems - Count the number of u8 elements in a property
  *