Commit f2f45a53 authored by Alexandru Ardelean's avatar Alexandru Ardelean Committed by Jonathan Cameron

iio: event: use short-hand variable in iio_device_{un}register_eventset functions

With the recent 'iio_dev_opaque' variable name, these two functions are
looking a bit ugly.

This change uses an 'ev_int' variable for the
iio_device_{un}register_eventset functions to make the code a little easier
to read.
Signed-off-by: default avatarAlexandru Ardelean <alexandru.ardelean@analog.com>
Link: https://lore.kernel.org/r/20200921103156.194748-1-alexandru.ardelean@analog.comSigned-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent 32eb9d41
...@@ -477,6 +477,7 @@ static const char *iio_event_group_name = "events"; ...@@ -477,6 +477,7 @@ static const char *iio_event_group_name = "events";
int iio_device_register_eventset(struct iio_dev *indio_dev) int iio_device_register_eventset(struct iio_dev *indio_dev)
{ {
struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev);
struct iio_event_interface *ev_int;
struct iio_dev_attr *p; struct iio_dev_attr *p;
int ret = 0, attrcount_orig = 0, attrcount, attrn; int ret = 0, attrcount_orig = 0, attrcount, attrn;
struct attribute **attr; struct attribute **attr;
...@@ -485,14 +486,15 @@ int iio_device_register_eventset(struct iio_dev *indio_dev) ...@@ -485,14 +486,15 @@ int iio_device_register_eventset(struct iio_dev *indio_dev)
iio_check_for_dynamic_events(indio_dev))) iio_check_for_dynamic_events(indio_dev)))
return 0; return 0;
iio_dev_opaque->event_interface = ev_int = kzalloc(sizeof(struct iio_event_interface), GFP_KERNEL);
kzalloc(sizeof(struct iio_event_interface), GFP_KERNEL); if (ev_int == NULL)
if (iio_dev_opaque->event_interface == NULL)
return -ENOMEM; return -ENOMEM;
INIT_LIST_HEAD(&iio_dev_opaque->event_interface->dev_attr_list); iio_dev_opaque->event_interface = ev_int;
INIT_LIST_HEAD(&ev_int->dev_attr_list);
iio_setup_ev_int(iio_dev_opaque->event_interface); iio_setup_ev_int(ev_int);
if (indio_dev->info->event_attrs != NULL) { if (indio_dev->info->event_attrs != NULL) {
attr = indio_dev->info->event_attrs->attrs; attr = indio_dev->info->event_attrs->attrs;
while (*attr++ != NULL) while (*attr++ != NULL)
...@@ -506,34 +508,29 @@ int iio_device_register_eventset(struct iio_dev *indio_dev) ...@@ -506,34 +508,29 @@ int iio_device_register_eventset(struct iio_dev *indio_dev)
attrcount += ret; attrcount += ret;
} }
iio_dev_opaque->event_interface->group.name = iio_event_group_name; ev_int->group.name = iio_event_group_name;
iio_dev_opaque->event_interface->group.attrs = kcalloc(attrcount + 1, ev_int->group.attrs = kcalloc(attrcount + 1,
sizeof(iio_dev_opaque->event_interface->group.attrs[0]), sizeof(ev_int->group.attrs[0]),
GFP_KERNEL); GFP_KERNEL);
if (iio_dev_opaque->event_interface->group.attrs == NULL) { if (ev_int->group.attrs == NULL) {
ret = -ENOMEM; ret = -ENOMEM;
goto error_free_setup_event_lines; goto error_free_setup_event_lines;
} }
if (indio_dev->info->event_attrs) if (indio_dev->info->event_attrs)
memcpy(iio_dev_opaque->event_interface->group.attrs, memcpy(ev_int->group.attrs,
indio_dev->info->event_attrs->attrs, indio_dev->info->event_attrs->attrs,
sizeof(iio_dev_opaque->event_interface->group.attrs[0]) sizeof(ev_int->group.attrs[0]) * attrcount_orig);
*attrcount_orig);
attrn = attrcount_orig; attrn = attrcount_orig;
/* Add all elements from the list. */ /* Add all elements from the list. */
list_for_each_entry(p, list_for_each_entry(p, &ev_int->dev_attr_list, l)
&iio_dev_opaque->event_interface->dev_attr_list, ev_int->group.attrs[attrn++] = &p->dev_attr.attr;
l) indio_dev->groups[indio_dev->groupcounter++] = &ev_int->group;
iio_dev_opaque->event_interface->group.attrs[attrn++] =
&p->dev_attr.attr;
indio_dev->groups[indio_dev->groupcounter++] =
&iio_dev_opaque->event_interface->group;
return 0; return 0;
error_free_setup_event_lines: error_free_setup_event_lines:
iio_free_chan_devattr_list(&iio_dev_opaque->event_interface->dev_attr_list); iio_free_chan_devattr_list(&ev_int->dev_attr_list);
kfree(iio_dev_opaque->event_interface); kfree(ev_int);
iio_dev_opaque->event_interface = NULL; iio_dev_opaque->event_interface = NULL;
return ret; return ret;
} }
...@@ -557,10 +554,11 @@ void iio_device_wakeup_eventset(struct iio_dev *indio_dev) ...@@ -557,10 +554,11 @@ void iio_device_wakeup_eventset(struct iio_dev *indio_dev)
void iio_device_unregister_eventset(struct iio_dev *indio_dev) void iio_device_unregister_eventset(struct iio_dev *indio_dev)
{ {
struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev);
struct iio_event_interface *ev_int = iio_dev_opaque->event_interface;
if (iio_dev_opaque->event_interface == NULL) if (ev_int == NULL)
return; return;
iio_free_chan_devattr_list(&iio_dev_opaque->event_interface->dev_attr_list); iio_free_chan_devattr_list(&ev_int->dev_attr_list);
kfree(iio_dev_opaque->event_interface->group.attrs); kfree(ev_int->group.attrs);
kfree(iio_dev_opaque->event_interface); kfree(ev_int);
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment