diff mbox series

[v3] tpm: st33zp24: Make st33zp24_remove() a void function

Message ID 20220104231103.227924-1-u.kleine-koenig@pengutronix.de (mailing list archive)
State New, archived
Headers show
Series [v3] tpm: st33zp24: Make st33zp24_remove() a void function | expand

Commit Message

Uwe Kleine-König Jan. 4, 2022, 11:11 p.m. UTC
Up to now st33zp24_remove() returns zero unconditionally. Make it return
no value 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>
---
Hello,

changes since v2:

 - reword commit log to not say "return void"

Best regards
Uwe

 drivers/char/tpm/st33zp24/i2c.c      | 5 +----
 drivers/char/tpm/st33zp24/spi.c      | 5 +----
 drivers/char/tpm/st33zp24/st33zp24.c | 3 +--
 drivers/char/tpm/st33zp24/st33zp24.h | 2 +-
 4 files changed, 4 insertions(+), 11 deletions(-)


base-commit: c9e6606c7fe92b50a02ce51dda82586ebdf99b48

Comments

Jarkko Sakkinen Jan. 7, 2022, 11:44 a.m. UTC | #1
On Wed, Jan 05, 2022 at 12:11:03AM +0100, Uwe Kleine-König wrote:
> Up to now st33zp24_remove() returns zero unconditionally. Make it return
> no value 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>

This patch does not improve functinality in any possible way, and neither
does it fix any bug.

/Jarkko
Uwe Kleine-König Jan. 7, 2022, 9:42 p.m. UTC | #2
On Fri, Jan 07, 2022 at 01:44:58PM +0200, Jarkko Sakkinen wrote:
> On Wed, Jan 05, 2022 at 12:11:03AM +0100, Uwe Kleine-König wrote:
> > Up to now st33zp24_remove() returns zero unconditionally. Make it return
> > no value 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>
> 
> This patch does not improve functinality in any possible way, and neither
> does it fix any bug.

There is no bug, but getting rid of

	ret = st33zp24_remove(chip);
	if (ret)
		return ret;

in a function that shouldn't return a value != 0 is a good thing. And
given that I want to do

	-static int st33zp24_spi_remove(struct spi_device *dev)
	+static void st33zp24_spi_remove(struct spi_device *dev)
	 {
	 	struct tpm_chip *chip = spi_get_drvdata(dev);

		st33zp24_remove(chip);
	-
	-	return 0
	 }

soon, this is much nicer than

	-static int st33zp24_spi_remove(struct spi_device *dev)
	+static void st33zp24_spi_remove(struct spi_device *dev)
	 {
	 	struct tpm_chip *chip = spi_get_drvdata(dev);
		int ret;

		ret = st33zp24_remove(chip);
		if (ret)
	-		return ret
	+		dev_err(&dev->dev, "Ignoring error ...\n");
	-
	-	return 0;
	 }

Now adding that st33zp24_remove always returns 0, I think this is really
a worthwhile change.

Best regards
Uwe
diff mbox series

Patch

diff --git a/drivers/char/tpm/st33zp24/i2c.c b/drivers/char/tpm/st33zp24/i2c.c
index 7c617edff4ca..3170d59d660c 100644
--- a/drivers/char/tpm/st33zp24/i2c.c
+++ b/drivers/char/tpm/st33zp24/i2c.c
@@ -267,11 +267,8 @@  static int st33zp24_i2c_probe(struct i2c_client *client,
 static int st33zp24_i2c_remove(struct i2c_client *client)
 {
 	struct tpm_chip *chip = i2c_get_clientdata(client);
-	int ret;
 
-	ret = st33zp24_remove(chip);
-	if (ret)
-		return ret;
+	st33zp24_remove(chip);
 
 	return 0;
 }
diff --git a/drivers/char/tpm/st33zp24/spi.c b/drivers/char/tpm/st33zp24/spi.c
index a75dafd39445..ccd9e42b8eab 100644
--- a/drivers/char/tpm/st33zp24/spi.c
+++ b/drivers/char/tpm/st33zp24/spi.c
@@ -384,11 +384,8 @@  static int st33zp24_spi_probe(struct spi_device *dev)
 static int st33zp24_spi_remove(struct spi_device *dev)
 {
 	struct tpm_chip *chip = spi_get_drvdata(dev);
-	int ret;
 
-	ret = st33zp24_remove(chip);
-	if (ret)
-		return ret;
+	st33zp24_remove(chip);
 
 	return 0;
 }
diff --git a/drivers/char/tpm/st33zp24/st33zp24.c b/drivers/char/tpm/st33zp24/st33zp24.c
index 4ec10ab5e576..2b63654c38d6 100644
--- a/drivers/char/tpm/st33zp24/st33zp24.c
+++ b/drivers/char/tpm/st33zp24/st33zp24.c
@@ -588,10 +588,9 @@  EXPORT_SYMBOL(st33zp24_probe);
  * @param: tpm_data, the tpm phy.
  * @return: 0 in case of success.
  */
-int st33zp24_remove(struct tpm_chip *chip)
+void st33zp24_remove(struct tpm_chip *chip)
 {
 	tpm_chip_unregister(chip);
-	return 0;
 }
 EXPORT_SYMBOL(st33zp24_remove);
 
diff --git a/drivers/char/tpm/st33zp24/st33zp24.h b/drivers/char/tpm/st33zp24/st33zp24.h
index 6747be1e2502..b387a476c555 100644
--- a/drivers/char/tpm/st33zp24/st33zp24.h
+++ b/drivers/char/tpm/st33zp24/st33zp24.h
@@ -34,5 +34,5 @@  int st33zp24_pm_resume(struct device *dev);
 
 int st33zp24_probe(void *phy_id, const struct st33zp24_phy_ops *ops,
 		   struct device *dev, int irq, int io_lpcpd);
-int st33zp24_remove(struct tpm_chip *chip);
+void st33zp24_remove(struct tpm_chip *chip);
 #endif /* __LOCAL_ST33ZP24_H__ */