[PATCH] staging: fbtft: replace __ATTR() with DEVICE_ATTR()

From: Aishwarya Pant
Date: Mon Dec 11 2017 - 04:54:44 EST


This is a clean-up patch which replaces the uses of raw __ATTR(...)
macro with the more conventional DEVICE_ATTR(...) for defining device
attributes.

Done using coccinelle-

@r@
identifier foo, n;
@@

struct device_attribute foo = __ATTR(n, ...);

@script:python p@
id;
foo << r.foo;
n << r.n;
@@

// standardise the variable name to dev_attr_{name}
coccinelle.id = "dev_attr_" + n

@@
identifier r.foo;
declarer name DEVICE_ATTR;
@@

//change definition
- struct device_attribute foo = __ATTR
+ DEVICE_ATTR
(...);

@depends on r@
identifier r.foo, p.id;
@@

// replace usages everywhere
- foo
+ id

Signed-off-by: Aishwarya Pant <aishpant@xxxxxxxxx>
---
drivers/staging/fbtft/fbtft-sysfs.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/staging/fbtft/fbtft-sysfs.c b/drivers/staging/fbtft/fbtft-sysfs.c
index 712096659aa0..506d604d01bb 100644
--- a/drivers/staging/fbtft/fbtft-sysfs.c
+++ b/drivers/staging/fbtft/fbtft-sysfs.c
@@ -197,19 +197,18 @@ static ssize_t show_debug(struct device *device,
return snprintf(buf, PAGE_SIZE, "%lu\n", par->debug);
}

-static struct device_attribute debug_device_attr =
- __ATTR(debug, 0660, show_debug, store_debug);
+static DEVICE_ATTR(debug, 0660, show_debug, store_debug);

void fbtft_sysfs_init(struct fbtft_par *par)
{
- device_create_file(par->info->dev, &debug_device_attr);
+ device_create_file(par->info->dev, &dev_attr_debug);
if (par->gamma.curves && par->fbtftops.set_gamma)
device_create_file(par->info->dev, &gamma_device_attrs[0]);
}

void fbtft_sysfs_exit(struct fbtft_par *par)
{
- device_remove_file(par->info->dev, &debug_device_attr);
+ device_remove_file(par->info->dev, &dev_attr_debug);
if (par->gamma.curves && par->fbtftops.set_gamma)
device_remove_file(par->info->dev, &gamma_device_attrs[0]);
}
--
2.15.1