diff mbox series

[05/22] Input: ad7877 - use device core to create driver-specific device attributes

Message ID 20230729005133.1095051-5-dmitry.torokhov@gmail.com
State Accepted
Commit e86253d98547a2229693dc516943439513949003
Headers show
Series [01/22] Input: cros_ec_keyb - use device core to create driver-specific device attributes | expand

Commit Message

Dmitry Torokhov July 29, 2023, 12:51 a.m. UTC
Instead of creating driver-specific device attributes with
devm_device_add_group() have device core do this by setting up dev_groups
pointer in the driver structure.

Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
---
 drivers/input/touchscreen/ad7877.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

Comments

Hennerich, Michael July 31, 2023, 5:23 a.m. UTC | #1
> -----Original Message-----
> From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
> Sent: Samstag, 29. Juli 2023 02:51
> To: linux-input@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org; Greg Kroah-Hartman
> <gregkh@linuxfoundation.org>; Hennerich, Michael
> <Michael.Hennerich@analog.com>
> Subject: [PATCH 05/22] Input: ad7877 - use device core to create driver-
> specific device attributes
> 
> Instead of creating driver-specific device attributes with
> devm_device_add_group() have device core do this by setting up dev_groups
> pointer in the driver structure.
> 
> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>

Acked-by: Michael Hennerich <michael.hennerich@analog.com>

> ---
>  drivers/input/touchscreen/ad7877.c | 12 +++++-------
>  1 file changed, 5 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/input/touchscreen/ad7877.c
> b/drivers/input/touchscreen/ad7877.c
> index edb36d663f22..a0598e9c7aff 100644
> --- a/drivers/input/touchscreen/ad7877.c
> +++ b/drivers/input/touchscreen/ad7877.c
> @@ -612,10 +612,11 @@ static umode_t ad7877_attr_is_visible(struct
> kobject *kobj,
>  	return mode;
>  }
> 
> -static const struct attribute_group ad7877_attr_group = {
> +static const struct attribute_group ad7877_group = {
>  	.is_visible	= ad7877_attr_is_visible,
>  	.attrs		= ad7877_attributes,
>  };
> +__ATTRIBUTE_GROUPS(ad7877);
> 
>  static void ad7877_setup_ts_def_msg(struct spi_device *spi, struct ad7877
> *ts)  { @@ -777,10 +778,6 @@ static int ad7877_probe(struct spi_device
> *spi)
>  		return err;
>  	}
> 
> -	err = devm_device_add_group(&spi->dev, &ad7877_attr_group);
> -	if (err)
> -		return err;
> -
>  	err = input_register_device(input_dev);
>  	if (err)
>  		return err;
> @@ -810,8 +807,9 @@ static DEFINE_SIMPLE_DEV_PM_OPS(ad7877_pm,
> ad7877_suspend, ad7877_resume);
> 
>  static struct spi_driver ad7877_driver = {
>  	.driver = {
> -		.name	= "ad7877",
> -		.pm	= pm_sleep_ptr(&ad7877_pm),
> +		.name		= "ad7877",
> +		.dev_groups	= ad7877_groups,
> +		.pm		= pm_sleep_ptr(&ad7877_pm),
>  	},
>  	.probe		= ad7877_probe,
>  };
> --
> 2.41.0.487.g6d72f3e995-goog
diff mbox series

Patch

diff --git a/drivers/input/touchscreen/ad7877.c b/drivers/input/touchscreen/ad7877.c
index edb36d663f22..a0598e9c7aff 100644
--- a/drivers/input/touchscreen/ad7877.c
+++ b/drivers/input/touchscreen/ad7877.c
@@ -612,10 +612,11 @@  static umode_t ad7877_attr_is_visible(struct kobject *kobj,
 	return mode;
 }
 
-static const struct attribute_group ad7877_attr_group = {
+static const struct attribute_group ad7877_group = {
 	.is_visible	= ad7877_attr_is_visible,
 	.attrs		= ad7877_attributes,
 };
+__ATTRIBUTE_GROUPS(ad7877);
 
 static void ad7877_setup_ts_def_msg(struct spi_device *spi, struct ad7877 *ts)
 {
@@ -777,10 +778,6 @@  static int ad7877_probe(struct spi_device *spi)
 		return err;
 	}
 
-	err = devm_device_add_group(&spi->dev, &ad7877_attr_group);
-	if (err)
-		return err;
-
 	err = input_register_device(input_dev);
 	if (err)
 		return err;
@@ -810,8 +807,9 @@  static DEFINE_SIMPLE_DEV_PM_OPS(ad7877_pm, ad7877_suspend, ad7877_resume);
 
 static struct spi_driver ad7877_driver = {
 	.driver = {
-		.name	= "ad7877",
-		.pm	= pm_sleep_ptr(&ad7877_pm),
+		.name		= "ad7877",
+		.dev_groups	= ad7877_groups,
+		.pm		= pm_sleep_ptr(&ad7877_pm),
 	},
 	.probe		= ad7877_probe,
 };