Re: [PATCH] staging: fbtft: replace __ATTR() with DEVICE_ATTR()
From: Greg Kroah-Hartman
Date: Wed Dec 13 2017 - 06:50:01 EST
On Mon, Dec 11, 2017 at 03:24:30PM +0530, Aishwarya Pant wrote:
> 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);
This should be DEVICE_ATTR_RW(), right? 0660 makes no sense...
thanks,
greg k-h