All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
To: Bartosz Golaszewski <brgl@bgdev.pl>,
	Linus Walleij <linus.walleij@linaro.org>
Cc: Mark Brown <broonie@kernel.org>,
	kernel@pengutronix.de, linux-gpio@vger.kernel.org,
	linux-spi@vger.kernel.org
Subject: [PATCH v2 02/20] gpio: max730x: Make __max730x_remove() return void
Date: Tue, 12 Oct 2021 17:39:27 +0200	[thread overview]
Message-ID: <20211012153945.2651412-3-u.kleine-koenig@pengutronix.de> (raw)
In-Reply-To: <20211012153945.2651412-1-u.kleine-koenig@pengutronix.de>

An spi or i2c remove callback is only called for devices that probed
successfully. In this case this implies that __max730x_probe() set a
non-NULL driver data. So the check ts == NULL is never true. With this
check dropped, __max730x_remove() returns zero unconditionally. Make it
return void instead which makes it easier to see in the callers that
there is no error to handle.

Also the return value of i2c and spi remove callbacks is ignored anyway.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
 drivers/gpio/gpio-max7300.c | 4 +++-
 drivers/gpio/gpio-max7301.c | 4 +++-
 drivers/gpio/gpio-max730x.c | 6 +-----
 include/linux/spi/max7301.h | 2 +-
 4 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/drivers/gpio/gpio-max7300.c b/drivers/gpio/gpio-max7300.c
index 19cc2ed6a3f5..b2b547dd6e84 100644
--- a/drivers/gpio/gpio-max7300.c
+++ b/drivers/gpio/gpio-max7300.c
@@ -50,7 +50,9 @@ static int max7300_probe(struct i2c_client *client,
 
 static int max7300_remove(struct i2c_client *client)
 {
-	return __max730x_remove(&client->dev);
+	__max730x_remove(&client->dev);
+
+	return 0;
 }
 
 static const struct i2c_device_id max7300_id[] = {
diff --git a/drivers/gpio/gpio-max7301.c b/drivers/gpio/gpio-max7301.c
index 1307c243b4e9..5862d73bf325 100644
--- a/drivers/gpio/gpio-max7301.c
+++ b/drivers/gpio/gpio-max7301.c
@@ -66,7 +66,9 @@ static int max7301_probe(struct spi_device *spi)
 
 static int max7301_remove(struct spi_device *spi)
 {
-	return __max730x_remove(&spi->dev);
+	__max730x_remove(&spi->dev);
+
+	return 0;
 }
 
 static const struct spi_device_id max7301_id[] = {
diff --git a/drivers/gpio/gpio-max730x.c b/drivers/gpio/gpio-max730x.c
index b8c1fe20f49a..bb5cf14ae4c8 100644
--- a/drivers/gpio/gpio-max730x.c
+++ b/drivers/gpio/gpio-max730x.c
@@ -220,18 +220,14 @@ int __max730x_probe(struct max7301 *ts)
 }
 EXPORT_SYMBOL_GPL(__max730x_probe);
 
-int __max730x_remove(struct device *dev)
+void __max730x_remove(struct device *dev)
 {
 	struct max7301 *ts = dev_get_drvdata(dev);
 
-	if (ts == NULL)
-		return -ENODEV;
-
 	/* Power down the chip and disable IRQ output */
 	ts->write(dev, 0x04, 0x00);
 	gpiochip_remove(&ts->chip);
 	mutex_destroy(&ts->lock);
-	return 0;
 }
 EXPORT_SYMBOL_GPL(__max730x_remove);
 
diff --git a/include/linux/spi/max7301.h b/include/linux/spi/max7301.h
index 21449067aedb..e392c53758bc 100644
--- a/include/linux/spi/max7301.h
+++ b/include/linux/spi/max7301.h
@@ -31,6 +31,6 @@ struct max7301_platform_data {
 	u32		input_pullup_active;
 };
 
-extern int __max730x_remove(struct device *dev);
+extern void __max730x_remove(struct device *dev);
 extern int __max730x_probe(struct max7301 *ts);
 #endif
-- 
2.30.2


  parent reply	other threads:[~2021-10-12 15:39 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-12 15:39 [PATCH v2 00/20] Make some spi device drivers return zero in .remove() Uwe Kleine-König
2021-10-12 15:39 ` Uwe Kleine-König
2021-10-12 15:39 ` [PATCH v2 01/20] drm/panel: s6e63m0: Make s6e63m0_remove() return void Uwe Kleine-König
2021-10-12 15:39 ` Uwe Kleine-König [this message]
2021-10-13 17:53   ` [PATCH v2 02/20] gpio: max730x: Make __max730x_remove() " Bartosz Golaszewski
2021-10-12 15:39 ` [PATCH v2 03/20] gpio: mc33880: Drop if with an always false condition Uwe Kleine-König
2021-10-13 17:53   ` Bartosz Golaszewski
2021-10-12 15:39 ` [PATCH v2 04/20] hwmon: max31722: Warn about failure to put device in stand-by in .remove() Uwe Kleine-König
2021-10-12 15:51   ` Guenter Roeck
2021-10-12 15:39 ` [PATCH v2 05/20] input: adxl34xx: Make adxl34x_remove() return void Uwe Kleine-König
2021-10-13  2:45   ` Dmitry Torokhov
2021-10-13  7:49   ` Hennerich, Michael
2021-10-12 15:39 ` [PATCH v2 06/20] input: touchscreen: tsc200x: Make tsc200x_remove() " Uwe Kleine-König
2021-10-13  2:45   ` Dmitry Torokhov
2021-10-12 15:39 ` [PATCH v2 07/20] media: cxd2880: Eliminate dead code Uwe Kleine-König
2021-10-12 15:39 ` [PATCH v2 08/20] mfd: mc13xxx: Make mc13xxx_common_exit() return void Uwe Kleine-König
2021-10-21 10:18   ` Lee Jones
2021-10-12 15:39 ` [PATCH v2 09/20] mfd: stmpe: Make stmpe_remove() " Uwe Kleine-König
2021-10-21 10:19   ` Lee Jones
2021-10-12 15:39 ` [PATCH v2 10/20] mfd: tps65912: Make tps65912_device_exit() " Uwe Kleine-König
2021-10-21 10:19   ` Lee Jones
2021-10-12 15:39 ` [PATCH v2 11/20] misc: ad525x_dpot: Make ad_dpot_remove() " Uwe Kleine-König
2021-10-13  7:49   ` Hennerich, Michael
2021-10-12 15:39 ` [PATCH v2 12/20] misc: lis3lv02d: Make lis3lv02d_remove_fs() " Uwe Kleine-König
2021-10-12 15:54   ` Hans de Goede
2021-10-13  9:01     ` Greg Kroah-Hartman
2021-10-12 15:39 ` [PATCH v2 13/20] mtd: dataflash: Warn about failure to unregister mtd device Uwe Kleine-König
2021-10-12 15:39   ` Uwe Kleine-König
2021-10-13 12:44   ` Miquel Raynal
2021-10-13 12:44     ` Miquel Raynal
2021-10-13 14:08     ` Uwe Kleine-König
2021-10-13 14:08       ` Uwe Kleine-König
2021-10-13 14:33       ` Miquel Raynal
2021-10-13 14:33         ` Miquel Raynal
2021-10-13 15:13         ` Mark Brown
2021-10-13 15:13           ` Mark Brown
2021-10-12 15:39 ` [PATCH v2 14/20] mtd: mchp23k256: " Uwe Kleine-König
2021-10-12 15:39   ` Uwe Kleine-König
2021-10-12 15:39 ` [PATCH v2 15/20] mtd: mchp48l640: " Uwe Kleine-König
2021-10-12 15:39   ` Uwe Kleine-König
2021-10-12 15:39 ` [PATCH v2 16/20] mtd: sst25l: " Uwe Kleine-König
2021-10-12 15:39   ` Uwe Kleine-König
2021-10-12 15:39 ` [PATCH v2 17/20] serial: max310x: Make max310x_remove() return void Uwe Kleine-König
2021-10-12 15:39 ` [PATCH v2 18/20] serial: sc16is7xx: Make sc16is7xx_remove() " Uwe Kleine-König
2021-10-12 15:39 ` [PATCH v2 19/20] staging: fbtft: Make fbtft_remove_common() " Uwe Kleine-König
2021-10-12 18:41   ` Andy Shevchenko
2021-10-12 15:39 ` [PATCH v2 20/20] tpm: st33zp24: Make st33zp24_remove() " Uwe Kleine-König

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211012153945.2651412-3-u.kleine-koenig@pengutronix.de \
    --to=u.kleine-koenig@pengutronix.de \
    --cc=brgl@bgdev.pl \
    --cc=broonie@kernel.org \
    --cc=kernel@pengutronix.de \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-spi@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.