linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v1 1/2] gpiolib: acpi: Remove never used devm_acpi_dev_remove_driver_gpios()
@ 2021-11-10 13:47 Andy Shevchenko
  2021-11-10 13:47 ` [PATCH v1 2/2] gpiolib: acpi: shrink devm_acpi_dev_add_driver_gpios() Andy Shevchenko
  2021-11-10 16:53 ` [PATCH v1 1/2] gpiolib: acpi: Remove never used devm_acpi_dev_remove_driver_gpios() Mika Westerberg
  0 siblings, 2 replies; 5+ messages in thread
From: Andy Shevchenko @ 2021-11-10 13:47 UTC (permalink / raw)
  To: Andy Shevchenko, linux-gpio, linux-acpi, linux-kernel
  Cc: Mika Westerberg, Linus Walleij, Bartosz Golaszewski

Remove never used devm_acpi_dev_remove_driver_gpios().

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 drivers/gpio/gpiolib-acpi.c   | 6 ------
 include/linux/gpio/consumer.h | 2 --
 2 files changed, 8 deletions(-)

diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c
index 985e8589c58b..25ecc0a37054 100644
--- a/drivers/gpio/gpiolib-acpi.c
+++ b/drivers/gpio/gpiolib-acpi.c
@@ -604,12 +604,6 @@ int devm_acpi_dev_add_driver_gpios(struct device *dev,
 }
 EXPORT_SYMBOL_GPL(devm_acpi_dev_add_driver_gpios);
 
-void devm_acpi_dev_remove_driver_gpios(struct device *dev)
-{
-	WARN_ON(devres_release(dev, devm_acpi_dev_release_driver_gpios, NULL, NULL));
-}
-EXPORT_SYMBOL_GPL(devm_acpi_dev_remove_driver_gpios);
-
 static bool acpi_get_driver_gpio_data(struct acpi_device *adev,
 				      const char *name, int index,
 				      struct fwnode_reference_args *args,
diff --git a/include/linux/gpio/consumer.h b/include/linux/gpio/consumer.h
index 97a28ad3393b..3ad67b4a72be 100644
--- a/include/linux/gpio/consumer.h
+++ b/include/linux/gpio/consumer.h
@@ -690,7 +690,6 @@ void acpi_dev_remove_driver_gpios(struct acpi_device *adev);
 
 int devm_acpi_dev_add_driver_gpios(struct device *dev,
 				   const struct acpi_gpio_mapping *gpios);
-void devm_acpi_dev_remove_driver_gpios(struct device *dev);
 
 struct gpio_desc *acpi_get_and_request_gpiod(char *path, int pin, char *label);
 
@@ -708,7 +707,6 @@ static inline int devm_acpi_dev_add_driver_gpios(struct device *dev,
 {
 	return -ENXIO;
 }
-static inline void devm_acpi_dev_remove_driver_gpios(struct device *dev) {}
 
 #endif /* CONFIG_GPIOLIB && CONFIG_ACPI */
 
-- 
2.33.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH v1 2/2] gpiolib: acpi: shrink devm_acpi_dev_add_driver_gpios()
  2021-11-10 13:47 [PATCH v1 1/2] gpiolib: acpi: Remove never used devm_acpi_dev_remove_driver_gpios() Andy Shevchenko
@ 2021-11-10 13:47 ` Andy Shevchenko
  2021-11-10 16:55   ` Mika Westerberg
  2021-11-10 16:53 ` [PATCH v1 1/2] gpiolib: acpi: Remove never used devm_acpi_dev_remove_driver_gpios() Mika Westerberg
  1 sibling, 1 reply; 5+ messages in thread
From: Andy Shevchenko @ 2021-11-10 13:47 UTC (permalink / raw)
  To: Andy Shevchenko, linux-gpio, linux-acpi, linux-kernel
  Cc: Mika Westerberg, Linus Walleij, Bartosz Golaszewski

If all we want to manage is a single pointer, there's no need to
manually allocate and add a new devres. We can simply use
devm_add_action_or_reset() and shrink the code by a good bit.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 drivers/gpio/gpiolib-acpi.c | 20 +++++++-------------
 1 file changed, 7 insertions(+), 13 deletions(-)

diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c
index 25ecc0a37054..7dd0484b89c6 100644
--- a/drivers/gpio/gpiolib-acpi.c
+++ b/drivers/gpio/gpiolib-acpi.c
@@ -579,28 +579,22 @@ void acpi_dev_remove_driver_gpios(struct acpi_device *adev)
 }
 EXPORT_SYMBOL_GPL(acpi_dev_remove_driver_gpios);
 
-static void devm_acpi_dev_release_driver_gpios(struct device *dev, void *res)
+static void acpi_dev_release_driver_gpios(void *adev)
 {
-	acpi_dev_remove_driver_gpios(ACPI_COMPANION(dev));
+	acpi_dev_remove_driver_gpios(adev);
 }
 
 int devm_acpi_dev_add_driver_gpios(struct device *dev,
 				   const struct acpi_gpio_mapping *gpios)
 {
-	void *res;
+	struct acpi_device *adev = ACPI_COMPANION(dev);
 	int ret;
 
-	res = devres_alloc(devm_acpi_dev_release_driver_gpios, 0, GFP_KERNEL);
-	if (!res)
-		return -ENOMEM;
-
-	ret = acpi_dev_add_driver_gpios(ACPI_COMPANION(dev), gpios);
-	if (ret) {
-		devres_free(res);
+	ret = acpi_dev_add_driver_gpios(adev, gpios);
+	if (ret)
 		return ret;
-	}
-	devres_add(dev, res);
-	return 0;
+
+	return devm_add_action_or_reset(dev, acpi_dev_release_driver_gpios, adev);
 }
 EXPORT_SYMBOL_GPL(devm_acpi_dev_add_driver_gpios);
 
-- 
2.33.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH v1 1/2] gpiolib: acpi: Remove never used devm_acpi_dev_remove_driver_gpios()
  2021-11-10 13:47 [PATCH v1 1/2] gpiolib: acpi: Remove never used devm_acpi_dev_remove_driver_gpios() Andy Shevchenko
  2021-11-10 13:47 ` [PATCH v1 2/2] gpiolib: acpi: shrink devm_acpi_dev_add_driver_gpios() Andy Shevchenko
@ 2021-11-10 16:53 ` Mika Westerberg
  2021-11-15 11:31   ` Andy Shevchenko
  1 sibling, 1 reply; 5+ messages in thread
From: Mika Westerberg @ 2021-11-10 16:53 UTC (permalink / raw)
  To: Andy Shevchenko
  Cc: linux-gpio, linux-acpi, linux-kernel, Linus Walleij,
	Bartosz Golaszewski

On Wed, Nov 10, 2021 at 03:47:42PM +0200, Andy Shevchenko wrote:
> Remove never used devm_acpi_dev_remove_driver_gpios().
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>

Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v1 2/2] gpiolib: acpi: shrink devm_acpi_dev_add_driver_gpios()
  2021-11-10 13:47 ` [PATCH v1 2/2] gpiolib: acpi: shrink devm_acpi_dev_add_driver_gpios() Andy Shevchenko
@ 2021-11-10 16:55   ` Mika Westerberg
  0 siblings, 0 replies; 5+ messages in thread
From: Mika Westerberg @ 2021-11-10 16:55 UTC (permalink / raw)
  To: Andy Shevchenko
  Cc: linux-gpio, linux-acpi, linux-kernel, Linus Walleij,
	Bartosz Golaszewski

On Wed, Nov 10, 2021 at 03:47:43PM +0200, Andy Shevchenko wrote:
> If all we want to manage is a single pointer, there's no need to
> manually allocate and add a new devres. We can simply use
> devm_add_action_or_reset() and shrink the code by a good bit.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>

Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v1 1/2] gpiolib: acpi: Remove never used devm_acpi_dev_remove_driver_gpios()
  2021-11-10 16:53 ` [PATCH v1 1/2] gpiolib: acpi: Remove never used devm_acpi_dev_remove_driver_gpios() Mika Westerberg
@ 2021-11-15 11:31   ` Andy Shevchenko
  0 siblings, 0 replies; 5+ messages in thread
From: Andy Shevchenko @ 2021-11-15 11:31 UTC (permalink / raw)
  To: Mika Westerberg
  Cc: linux-gpio, linux-acpi, linux-kernel, Linus Walleij,
	Bartosz Golaszewski

On Wed, Nov 10, 2021 at 06:53:57PM +0200, Mika Westerberg wrote:
> On Wed, Nov 10, 2021 at 03:47:42PM +0200, Andy Shevchenko wrote:
> > Remove never used devm_acpi_dev_remove_driver_gpios().
> > 
> > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> 
> Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>

Pushed to my review and testing queue, thanks!

-- 
With Best Regards,
Andy Shevchenko



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-11-15 11:31 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-11-10 13:47 [PATCH v1 1/2] gpiolib: acpi: Remove never used devm_acpi_dev_remove_driver_gpios() Andy Shevchenko
2021-11-10 13:47 ` [PATCH v1 2/2] gpiolib: acpi: shrink devm_acpi_dev_add_driver_gpios() Andy Shevchenko
2021-11-10 16:55   ` Mika Westerberg
2021-11-10 16:53 ` [PATCH v1 1/2] gpiolib: acpi: Remove never used devm_acpi_dev_remove_driver_gpios() Mika Westerberg
2021-11-15 11:31   ` Andy Shevchenko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).