Merge tag 'lsk-v3.10-android-15.01'
[firefly-linux-kernel-4.4.55.git] / drivers / of / base.c
index 191b370b102e983f80152ae0df832fef994d295c..aa4d7e3a3050fe5534886d0f59f85239dc6cd34d 100644 (file)
@@ -937,6 +937,24 @@ int of_property_read_u8_array(const struct device_node *np,
 }
 EXPORT_SYMBOL_GPL(of_property_read_u8_array);
 
+
+int of_property_read_u8_array_tp(const struct device_node *np,
+                       const char *propname, u8 *out_values, size_t sz)
+{
+       const __be32 *val = of_find_property_value_of_size(np, propname,
+                                               (sz * sizeof(*out_values)));
+
+       if (IS_ERR(val))
+               return PTR_ERR(val);
+
+       while (sz--)
+               *out_values++ = (unsigned char)(be32_to_cpup(val++));
+       return 0;
+}
+EXPORT_SYMBOL_GPL(of_property_read_u8_array_tp);
+
+
+
 /**
  * of_property_read_u16_array - Find and read an array of u16 from a property.
  *