device property: Move property_entry_free_data() upper

It's just a preparatory patch to use property_entry_free_data() later on.

No functional change intended.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Andy Shevchenko 2018-01-22 16:21:37 +02:00 committed by Greg Kroah-Hartman
parent c508c46e6e
commit d5f962fa26

View file

@ -695,6 +695,23 @@ int fwnode_property_get_reference_args(const struct fwnode_handle *fwnode,
}
EXPORT_SYMBOL_GPL(fwnode_property_get_reference_args);
static void property_entry_free_data(const struct property_entry *p)
{
size_t i, nval;
if (p->is_array) {
if (p->is_string && p->pointer.str) {
nval = p->length / sizeof(const char *);
for (i = 0; i < nval; i++)
kfree(p->pointer.str[i]);
}
kfree(p->pointer.raw_data);
} else if (p->is_string) {
kfree(p->value.str);
}
kfree(p->name);
}
static int property_copy_string_array(struct property_entry *dst,
const struct property_entry *src)
{
@ -768,23 +785,6 @@ out_free_name:
return error;
}
static void property_entry_free_data(const struct property_entry *p)
{
size_t i, nval;
if (p->is_array) {
if (p->is_string && p->pointer.str) {
nval = p->length / sizeof(const char *);
for (i = 0; i < nval; i++)
kfree(p->pointer.str[i]);
}
kfree(p->pointer.raw_data);
} else if (p->is_string) {
kfree(p->value.str);
}
kfree(p->name);
}
/**
* property_entries_dup - duplicate array of properties
* @properties: array of properties to copy