* [PATCH v2 00/20] Make some spi device drivers return zero in .remove()
@ 2021-10-12 15:39 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
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Uwe Kleine-König @ 2021-10-12 15:39 UTC (permalink / raw)
To: Alexandre Torgue, Arnd Bergmann, Bartosz Golaszewski,
Dmitry Torokhov, Eric Piel, Greg Kroah-Hartman, Guenter Roeck,
Hans de Goede, Jarkko Sakkinen, Jason Gunthorpe, Jean Delvare,
Jiri Slaby, Lee Jones, Linus Walleij, Mark Gross,
Mauro Carvalho Chehab, Maxime Coquelin, Michael Hennerich,
Miquel Raynal, Peter Huewe, Richard Weinberger, Thierry Reding,
Vignesh Raghavendra, Yasunari Takiguchi
Cc: Andy Shevchenko, Colin Ian King, Dan Carpenter, Fabio Estevam,
Heiko Schocher, Len Baker, Mark Brown, Phil Reid, Sam Ravnborg,
Tudor Ambarus, dri-devel, kernel, linux-fbdev, linux-gpio,
linux-hwmon, linux-input, linux-integrity, linux-kernel,
linux-media, linux-mtd, linux-serial, linux-spi, linux-staging,
linux-stm32, platform-driver-x86
Hello,
this is v2 of my quest to make spi remove callbacks return void. Today
they return an int, but the only result of returning a non-zero value is
a warning message. So it's a bad idea to return an error code in the
expectation that not freeing some resources is ok then. The same holds
true for i2c and platform devices which benefit en passant for a few
drivers.
The patches in this series address some of the spi drivers that might
return non-zero and adapt them accordingly to return zero instead. For
most drivers it's just about not hiding the fact that they already
return zero.
Given that there are quite some more patches of this type to create
before I can change the spi remove callback, I suggest the respective
subsystem maintainers pick up these patches. There are no
interdependencies in this series.
Compared to (implicit) v1
- I fixed a few compiler issues (this series it build tested with an
allmoddefconfig on arm64, m68k, powerpc, riscv, s390, sparc64 and
x86_64).
- A few new patches (2x gpio, 2x misc, 4x mtd)
- One patch already landed in next, this one I dropped. The drm/panel
patch as claimed to applied, too, but not yet in next. It's included
here, but I assume I was just too impatient and this one should be
ignored.
Full range-diff below.
Best regards
Uwe
Uwe Kleine-König (20):
drm/panel: s6e63m0: Make s6e63m0_remove() return void
gpio: max730x: Make __max730x_remove() return void
gpio: mc33880: Drop if with an always false condition
hwmon: max31722: Warn about failure to put device in stand-by in
.remove()
input: adxl34xx: Make adxl34x_remove() return void
input: touchscreen: tsc200x: Make tsc200x_remove() return void
media: cxd2880: Eliminate dead code
mfd: mc13xxx: Make mc13xxx_common_exit() return void
mfd: stmpe: Make stmpe_remove() return void
mfd: tps65912: Make tps65912_device_exit() return void
misc: ad525x_dpot: Make ad_dpot_remove() return void
misc: lis3lv02d: Make lis3lv02d_remove_fs() return void
mtd: dataflash: Warn about failure to unregister mtd device
mtd: mchp23k256: Warn about failure to unregister mtd device
mtd: mchp48l640: Warn about failure to unregister mtd device
mtd: sst25l: Warn about failure to unregister mtd device
serial: max310x: Make max310x_remove() return void
serial: sc16is7xx: Make sc16is7xx_remove() return void
staging: fbtft: Make fbtft_remove_common() return void
tpm: st33zp24: Make st33zp24_remove() return void
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 +-
drivers/gpio/gpio-max7300.c | 4 +++-
drivers/gpio/gpio-max7301.c | 4 +++-
drivers/gpio/gpio-max730x.c | 6 +-----
drivers/gpio/gpio-mc33880.c | 2 --
drivers/gpu/drm/panel/panel-samsung-s6e63m0-dsi.c | 3 ++-
drivers/gpu/drm/panel/panel-samsung-s6e63m0-spi.c | 3 ++-
drivers/gpu/drm/panel/panel-samsung-s6e63m0.c | 4 +---
drivers/gpu/drm/panel/panel-samsung-s6e63m0.h | 2 +-
drivers/hwmon/max31722.c | 8 +++++++-
drivers/input/misc/adxl34x-i2c.c | 4 +++-
drivers/input/misc/adxl34x-spi.c | 4 +++-
drivers/input/misc/adxl34x.c | 4 +---
drivers/input/misc/adxl34x.h | 2 +-
drivers/input/touchscreen/tsc2004.c | 4 +++-
drivers/input/touchscreen/tsc2005.c | 4 +++-
drivers/input/touchscreen/tsc200x-core.c | 4 +---
drivers/input/touchscreen/tsc200x-core.h | 2 +-
drivers/media/spi/cxd2880-spi.c | 13 +------------
drivers/mfd/mc13xxx-core.c | 4 +---
drivers/mfd/mc13xxx-i2c.c | 3 ++-
drivers/mfd/mc13xxx-spi.c | 3 ++-
drivers/mfd/mc13xxx.h | 2 +-
drivers/mfd/stmpe-i2c.c | 4 +++-
drivers/mfd/stmpe-spi.c | 4 +++-
drivers/mfd/stmpe.c | 4 +---
drivers/mfd/stmpe.h | 2 +-
drivers/mfd/tps65912-core.c | 4 +---
drivers/mfd/tps65912-i2c.c | 4 +++-
drivers/mfd/tps65912-spi.c | 4 +++-
drivers/misc/ad525x_dpot-i2c.c | 3 ++-
drivers/misc/ad525x_dpot-spi.c | 3 ++-
drivers/misc/ad525x_dpot.c | 4 +---
drivers/misc/ad525x_dpot.h | 2 +-
drivers/misc/lis3lv02d/lis3lv02d.c | 3 +--
drivers/misc/lis3lv02d/lis3lv02d.h | 2 +-
drivers/misc/lis3lv02d/lis3lv02d_spi.c | 4 +++-
drivers/mtd/devices/mchp23k256.c | 9 ++++++++-
drivers/mtd/devices/mchp48l640.c | 8 +++++++-
drivers/mtd/devices/mtd_dataflash.c | 5 ++++-
drivers/mtd/devices/sst25l.c | 8 +++++++-
drivers/platform/x86/hp_accel.c | 3 ++-
drivers/staging/fbtft/fbtft-core.c | 8 +-------
drivers/staging/fbtft/fbtft.h | 8 +++++---
drivers/tty/serial/max310x.c | 7 +++----
drivers/tty/serial/sc16is7xx.c | 12 +++++++-----
include/linux/mfd/tps65912.h | 2 +-
include/linux/spi/max7301.h | 2 +-
51 files changed, 119 insertions(+), 104 deletions(-)
Range-diff against v1:
1: 73a1a54d9ea0 = 1: 87fd7940fbfd drm/panel: s6e63m0: Make s6e63m0_remove() return void
2: 3bcc8e8bd1a3 < -: ------------ hwmon: adt7x10: Make adt7x10_remove() return void
-: ------------ > 2: 305311d63bbb gpio: max730x: Make __max730x_remove() return void
-: ------------ > 3: 0cafc31ea5c5 gpio: mc33880: Drop if with an always false condition
3: 07f067732aa9 ! 4: f39467b50f06 hwmon: max31722: Warn about failure to put device in stand-by in .remove()
@@ Commit message
nothing happens apart from emitting a generic error message. Make this
error message more device specific and return zero instead.
- Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Michael Hennerich <michael.hennerich@analog.com>
+ Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
## drivers/hwmon/max31722.c ##
@@ drivers/hwmon/max31722.c: static int max31722_probe(struct spi_device *spi)
4: 0b0a5497d105 = 5: de3a78214008 input: adxl34xx: Make adxl34x_remove() return void
5: 0d4f14bc2dd6 ! 6: 9629ac3f9e13 input: touchscreen: tsc200x: Make tsc200x_remove() return void
@@ drivers/input/touchscreen/tsc2005.c: static int tsc2005_probe(struct spi_device
- return tsc200x_remove(&spi->dev);
+ tsc200x_remove(&spi->dev);
+
-+ return 0
++ return 0;
}
#ifdef CONFIG_OF
6: a68bbd23223b = 7: 1aab41df9262 media: cxd2880: Eliminate dead code
7: 3801b37ac18f ! 8: 745d1a5f840e mfd: mc13xxx: Make mc13xxx_common_exit() return void
@@ drivers/mfd/mc13xxx-spi.c: static int mc13xxx_spi_probe(struct spi_device *spi)
{
- return mc13xxx_common_exit(&spi->dev);
+ mc13xxx_common_exit(&spi->dev);
-+ return 0
++ return 0;
}
static struct spi_driver mc13xxx_spi_driver = {
8: 22159093ce71 = 9: 7ee04277db66 mfd: stmpe: Make stmpe_remove() return void
9: f91da216c752 = 10: 4a21c90a57f8 mfd: tps65912: Make tps65912_device_exit() return void
-: ------------ > 11: f92aa824fd1c misc: ad525x_dpot: Make ad_dpot_remove() return void
-: ------------ > 12: 5b2fccd09a24 misc: lis3lv02d: Make lis3lv02d_remove_fs() return void
-: ------------ > 13: 609ab18323fc mtd: dataflash: Warn about failure to unregister mtd device
-: ------------ > 14: 3b220d5fa547 mtd: mchp23k256: Warn about failure to unregister mtd device
-: ------------ > 15: baf6f4b3a8c7 mtd: mchp48l640: Warn about failure to unregister mtd device
-: ------------ > 16: edf3788a30b0 mtd: sst25l: Warn about failure to unregister mtd device
10: f2def77b74d1 ! 17: 614f7c001377 serial: max310x: Make max310x_remove() return void
@@ drivers/tty/serial/max310x.c: static int max310x_spi_probe(struct spi_device *sp
{
- return max310x_remove(&spi->dev);
+ max310x_remove(&spi->dev);
-+ return 0
++ return 0;
}
static const struct spi_device_id max310x_id_table[] = {
11: 283e4bbeff38 ! 18: 35d1f5b36de5 serial: sc16is7xx: Make sc16is7xx_remove() return void
@@ drivers/tty/serial/sc16is7xx.c: static int sc16is7xx_probe(struct device *dev,
{
struct sc16is7xx_port *s = dev_get_drvdata(dev);
int i;
+@@ drivers/tty/serial/sc16is7xx.c: static int sc16is7xx_remove(struct device *dev)
+ kthread_stop(s->kworker_task);
+
+ clk_disable_unprepare(s->clk);
+-
+- return 0;
+ }
+
+ static const struct of_device_id __maybe_unused sc16is7xx_dt_ids[] = {
@@ drivers/tty/serial/sc16is7xx.c: static int sc16is7xx_spi_probe(struct spi_device *spi)
static int sc16is7xx_spi_remove(struct spi_device *spi)
12: 5093fbdceee5 ! 19: d9ec9a96fbb8 staging: fbtft: Make fbtft_remove_common() return void
@@ drivers/staging/fbtft/fbtft-core.c: EXPORT_SYMBOL(fbtft_probe_common);
## drivers/staging/fbtft/fbtft.h ##
+@@ drivers/staging/fbtft/fbtft.h: void fbtft_unregister_backlight(struct fbtft_par *par);
+ int fbtft_init_display(struct fbtft_par *par);
+ int fbtft_probe_common(struct fbtft_display *display, struct spi_device *sdev,
+ struct platform_device *pdev);
+-int fbtft_remove_common(struct device *dev, struct fb_info *info);
++void fbtft_remove_common(struct device *dev, struct fb_info *info);
+
+ /* fbtft-io.c */
+ int fbtft_write_spi(struct fbtft_par *par, void *buf, size_t len);
@@ drivers/staging/fbtft/fbtft.h: static int fbtft_driver_remove_spi(struct spi_device *spi) \
{ \
struct fb_info *info = spi_get_drvdata(spi); \
13: 9156e6380a5e = 20: 89d0b85968a9 tpm: st33zp24: Make st33zp24_remove() return void
base-commit: 9e1ff307c779ce1f0f810c7ecce3d95bbae40896
--
2.30.2
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 08/20] mfd: mc13xxx: Make mc13xxx_common_exit() return void
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-21 10:18 ` Lee Jones
2021-10-12 15:39 ` [PATCH v2 10/20] mfd: tps65912: Make tps65912_device_exit() " Uwe Kleine-König
2021-10-12 15:39 ` [PATCH v2 11/20] misc: ad525x_dpot: Make ad_dpot_remove() " Uwe Kleine-König
2 siblings, 1 reply; 7+ messages in thread
From: Uwe Kleine-König @ 2021-10-12 15:39 UTC (permalink / raw)
To: Lee Jones; +Cc: Mark Brown, kernel, linux-kernel, linux-spi
Up to now mc13xxx_common_exit() 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/mfd/mc13xxx-core.c | 4 +---
drivers/mfd/mc13xxx-i2c.c | 3 ++-
drivers/mfd/mc13xxx-spi.c | 3 ++-
drivers/mfd/mc13xxx.h | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/mfd/mc13xxx-core.c b/drivers/mfd/mc13xxx-core.c
index 1abe7432aad8..8a4f1d90dcfd 100644
--- a/drivers/mfd/mc13xxx-core.c
+++ b/drivers/mfd/mc13xxx-core.c
@@ -496,15 +496,13 @@ int mc13xxx_common_init(struct device *dev)
}
EXPORT_SYMBOL_GPL(mc13xxx_common_init);
-int mc13xxx_common_exit(struct device *dev)
+void mc13xxx_common_exit(struct device *dev)
{
struct mc13xxx *mc13xxx = dev_get_drvdata(dev);
mfd_remove_devices(dev);
regmap_del_irq_chip(mc13xxx->irq, mc13xxx->irq_data);
mutex_destroy(&mc13xxx->lock);
-
- return 0;
}
EXPORT_SYMBOL_GPL(mc13xxx_common_exit);
diff --git a/drivers/mfd/mc13xxx-i2c.c b/drivers/mfd/mc13xxx-i2c.c
index 65b4dd8e5afb..fb937f66277e 100644
--- a/drivers/mfd/mc13xxx-i2c.c
+++ b/drivers/mfd/mc13xxx-i2c.c
@@ -87,7 +87,8 @@ static int mc13xxx_i2c_probe(struct i2c_client *client,
static int mc13xxx_i2c_remove(struct i2c_client *client)
{
- return mc13xxx_common_exit(&client->dev);
+ mc13xxx_common_exit(&client->dev);
+ return 0;
}
static struct i2c_driver mc13xxx_i2c_driver = {
diff --git a/drivers/mfd/mc13xxx-spi.c b/drivers/mfd/mc13xxx-spi.c
index 286ddcf5ddc6..4d8913d647e6 100644
--- a/drivers/mfd/mc13xxx-spi.c
+++ b/drivers/mfd/mc13xxx-spi.c
@@ -168,7 +168,8 @@ static int mc13xxx_spi_probe(struct spi_device *spi)
static int mc13xxx_spi_remove(struct spi_device *spi)
{
- return mc13xxx_common_exit(&spi->dev);
+ mc13xxx_common_exit(&spi->dev);
+ return 0;
}
static struct spi_driver mc13xxx_spi_driver = {
diff --git a/drivers/mfd/mc13xxx.h b/drivers/mfd/mc13xxx.h
index ce6eec52e8eb..bd5ba9a0e14f 100644
--- a/drivers/mfd/mc13xxx.h
+++ b/drivers/mfd/mc13xxx.h
@@ -44,6 +44,6 @@ struct mc13xxx {
};
int mc13xxx_common_init(struct device *dev);
-int mc13xxx_common_exit(struct device *dev);
+void mc13xxx_common_exit(struct device *dev);
#endif /* __DRIVERS_MFD_MC13XXX_H */
--
2.30.2
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 10/20] mfd: tps65912: Make tps65912_device_exit() return void
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 ` [PATCH v2 08/20] mfd: mc13xxx: Make mc13xxx_common_exit() return void Uwe Kleine-König
@ 2021-10-12 15:39 ` 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
2 siblings, 1 reply; 7+ messages in thread
From: Uwe Kleine-König @ 2021-10-12 15:39 UTC (permalink / raw)
To: Lee Jones; +Cc: Mark Brown, kernel, linux-kernel, linux-spi
Up to now tps65912_device_exit() 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/mfd/tps65912-core.c | 4 +---
drivers/mfd/tps65912-i2c.c | 4 +++-
drivers/mfd/tps65912-spi.c | 4 +++-
include/linux/mfd/tps65912.h | 2 +-
4 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/drivers/mfd/tps65912-core.c b/drivers/mfd/tps65912-core.c
index b55b1d5d6955..c282a05e7146 100644
--- a/drivers/mfd/tps65912-core.c
+++ b/drivers/mfd/tps65912-core.c
@@ -115,11 +115,9 @@ int tps65912_device_init(struct tps65912 *tps)
}
EXPORT_SYMBOL_GPL(tps65912_device_init);
-int tps65912_device_exit(struct tps65912 *tps)
+void tps65912_device_exit(struct tps65912 *tps)
{
regmap_del_irq_chip(tps->irq, tps->irq_data);
-
- return 0;
}
EXPORT_SYMBOL_GPL(tps65912_device_exit);
diff --git a/drivers/mfd/tps65912-i2c.c b/drivers/mfd/tps65912-i2c.c
index f7c22ea7b36c..06eb2784d322 100644
--- a/drivers/mfd/tps65912-i2c.c
+++ b/drivers/mfd/tps65912-i2c.c
@@ -55,7 +55,9 @@ static int tps65912_i2c_remove(struct i2c_client *client)
{
struct tps65912 *tps = i2c_get_clientdata(client);
- return tps65912_device_exit(tps);
+ tps65912_device_exit(tps);
+
+ return 0;
}
static const struct i2c_device_id tps65912_i2c_id_table[] = {
diff --git a/drivers/mfd/tps65912-spi.c b/drivers/mfd/tps65912-spi.c
index 21a8d6ac5c4a..d701926aa46e 100644
--- a/drivers/mfd/tps65912-spi.c
+++ b/drivers/mfd/tps65912-spi.c
@@ -54,7 +54,9 @@ static int tps65912_spi_remove(struct spi_device *spi)
{
struct tps65912 *tps = spi_get_drvdata(spi);
- return tps65912_device_exit(tps);
+ tps65912_device_exit(tps);
+
+ return 0;
}
static const struct spi_device_id tps65912_spi_id_table[] = {
diff --git a/include/linux/mfd/tps65912.h b/include/linux/mfd/tps65912.h
index 7943e413deae..8a61386cb8c1 100644
--- a/include/linux/mfd/tps65912.h
+++ b/include/linux/mfd/tps65912.h
@@ -322,6 +322,6 @@ struct tps65912 {
extern const struct regmap_config tps65912_regmap_config;
int tps65912_device_init(struct tps65912 *tps);
-int tps65912_device_exit(struct tps65912 *tps);
+void tps65912_device_exit(struct tps65912 *tps);
#endif /* __LINUX_MFD_TPS65912_H */
--
2.30.2
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 11/20] misc: ad525x_dpot: Make ad_dpot_remove() return void
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 ` [PATCH v2 08/20] mfd: mc13xxx: Make mc13xxx_common_exit() return void Uwe Kleine-König
2021-10-12 15:39 ` [PATCH v2 10/20] mfd: tps65912: Make tps65912_device_exit() " Uwe Kleine-König
@ 2021-10-12 15:39 ` Uwe Kleine-König
2021-10-13 7:49 ` Hennerich, Michael
2 siblings, 1 reply; 7+ messages in thread
From: Uwe Kleine-König @ 2021-10-12 15:39 UTC (permalink / raw)
To: Arnd Bergmann, Greg Kroah-Hartman, Michael Hennerich
Cc: Mark Brown, kernel, linux-kernel, linux-spi
Up to now ad_dpot_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/misc/ad525x_dpot-i2c.c | 3 ++-
drivers/misc/ad525x_dpot-spi.c | 3 ++-
drivers/misc/ad525x_dpot.c | 4 +---
drivers/misc/ad525x_dpot.h | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/misc/ad525x_dpot-i2c.c b/drivers/misc/ad525x_dpot-i2c.c
index bd869ec5edba..0ee0c6d808c3 100644
--- a/drivers/misc/ad525x_dpot-i2c.c
+++ b/drivers/misc/ad525x_dpot-i2c.c
@@ -69,7 +69,8 @@ static int ad_dpot_i2c_probe(struct i2c_client *client,
static int ad_dpot_i2c_remove(struct i2c_client *client)
{
- return ad_dpot_remove(&client->dev);
+ ad_dpot_remove(&client->dev);
+ return 0;
}
static const struct i2c_device_id ad_dpot_id[] = {
diff --git a/drivers/misc/ad525x_dpot-spi.c b/drivers/misc/ad525x_dpot-spi.c
index aea931dd272e..a9e75d80ad36 100644
--- a/drivers/misc/ad525x_dpot-spi.c
+++ b/drivers/misc/ad525x_dpot-spi.c
@@ -92,7 +92,8 @@ static int ad_dpot_spi_probe(struct spi_device *spi)
static int ad_dpot_spi_remove(struct spi_device *spi)
{
- return ad_dpot_remove(&spi->dev);
+ ad_dpot_remove(&spi->dev);
+ return 0;
}
static const struct spi_device_id ad_dpot_spi_id[] = {
diff --git a/drivers/misc/ad525x_dpot.c b/drivers/misc/ad525x_dpot.c
index 5d8f3f6a95f2..756ef6912b5a 100644
--- a/drivers/misc/ad525x_dpot.c
+++ b/drivers/misc/ad525x_dpot.c
@@ -743,7 +743,7 @@ int ad_dpot_probe(struct device *dev,
}
EXPORT_SYMBOL(ad_dpot_probe);
-int ad_dpot_remove(struct device *dev)
+void ad_dpot_remove(struct device *dev)
{
struct dpot_data *data = dev_get_drvdata(dev);
int i;
@@ -753,8 +753,6 @@ int ad_dpot_remove(struct device *dev)
ad_dpot_remove_files(dev, data->feat, i);
kfree(data);
-
- return 0;
}
EXPORT_SYMBOL(ad_dpot_remove);
diff --git a/drivers/misc/ad525x_dpot.h b/drivers/misc/ad525x_dpot.h
index ee8dc9f5a45a..72a9d6801937 100644
--- a/drivers/misc/ad525x_dpot.h
+++ b/drivers/misc/ad525x_dpot.h
@@ -209,6 +209,6 @@ struct ad_dpot_bus_data {
int ad_dpot_probe(struct device *dev, struct ad_dpot_bus_data *bdata,
unsigned long devid, const char *name);
-int ad_dpot_remove(struct device *dev);
+void ad_dpot_remove(struct device *dev);
#endif
--
2.30.2
^ permalink raw reply related [flat|nested] 7+ messages in thread
* RE: [PATCH v2 11/20] misc: ad525x_dpot: Make ad_dpot_remove() return void
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
0 siblings, 0 replies; 7+ messages in thread
From: Hennerich, Michael @ 2021-10-13 7:49 UTC (permalink / raw)
To: Uwe Kleine-König, Arnd Bergmann, Greg Kroah-Hartman
Cc: Mark Brown, kernel@pengutronix.de, linux-kernel@vger.kernel.org,
linux-spi@vger.kernel.org
> -----Original Message-----
> From: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> Sent: Dienstag, 12. Oktober 2021 17:40
> To: Arnd Bergmann <arnd@arndb.de>; Greg Kroah-Hartman
> <gregkh@linuxfoundation.org>; Hennerich, Michael
> <Michael.Hennerich@analog.com>
> Cc: Mark Brown <broonie@kernel.org>; kernel@pengutronix.de; linux-
> kernel@vger.kernel.org; linux-spi@vger.kernel.org
> Subject: [PATCH v2 11/20] misc: ad525x_dpot: Make ad_dpot_remove() return
> void
>
> Up to now ad_dpot_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>
Acked-by: Michael Hennerich <michael.hennerich@analog.com>
> ---
> drivers/misc/ad525x_dpot-i2c.c | 3 ++-
> drivers/misc/ad525x_dpot-spi.c | 3 ++-
> drivers/misc/ad525x_dpot.c | 4 +---
> drivers/misc/ad525x_dpot.h | 2 +-
> 4 files changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/misc/ad525x_dpot-i2c.c b/drivers/misc/ad525x_dpot-i2c.c
> index bd869ec5edba..0ee0c6d808c3 100644
> --- a/drivers/misc/ad525x_dpot-i2c.c
> +++ b/drivers/misc/ad525x_dpot-i2c.c
> @@ -69,7 +69,8 @@ static int ad_dpot_i2c_probe(struct i2c_client *client,
>
> static int ad_dpot_i2c_remove(struct i2c_client *client) {
> - return ad_dpot_remove(&client->dev);
> + ad_dpot_remove(&client->dev);
> + return 0;
> }
>
> static const struct i2c_device_id ad_dpot_id[] = { diff --git
> a/drivers/misc/ad525x_dpot-spi.c b/drivers/misc/ad525x_dpot-spi.c index
> aea931dd272e..a9e75d80ad36 100644
> --- a/drivers/misc/ad525x_dpot-spi.c
> +++ b/drivers/misc/ad525x_dpot-spi.c
> @@ -92,7 +92,8 @@ static int ad_dpot_spi_probe(struct spi_device *spi)
>
> static int ad_dpot_spi_remove(struct spi_device *spi) {
> - return ad_dpot_remove(&spi->dev);
> + ad_dpot_remove(&spi->dev);
> + return 0;
> }
>
> static const struct spi_device_id ad_dpot_spi_id[] = { diff --git
> a/drivers/misc/ad525x_dpot.c b/drivers/misc/ad525x_dpot.c index
> 5d8f3f6a95f2..756ef6912b5a 100644
> --- a/drivers/misc/ad525x_dpot.c
> +++ b/drivers/misc/ad525x_dpot.c
> @@ -743,7 +743,7 @@ int ad_dpot_probe(struct device *dev, }
> EXPORT_SYMBOL(ad_dpot_probe);
>
> -int ad_dpot_remove(struct device *dev)
> +void ad_dpot_remove(struct device *dev)
> {
> struct dpot_data *data = dev_get_drvdata(dev);
> int i;
> @@ -753,8 +753,6 @@ int ad_dpot_remove(struct device *dev)
> ad_dpot_remove_files(dev, data->feat, i);
>
> kfree(data);
> -
> - return 0;
> }
> EXPORT_SYMBOL(ad_dpot_remove);
>
> diff --git a/drivers/misc/ad525x_dpot.h b/drivers/misc/ad525x_dpot.h index
> ee8dc9f5a45a..72a9d6801937 100644
> --- a/drivers/misc/ad525x_dpot.h
> +++ b/drivers/misc/ad525x_dpot.h
> @@ -209,6 +209,6 @@ struct ad_dpot_bus_data {
>
> int ad_dpot_probe(struct device *dev, struct ad_dpot_bus_data *bdata,
> unsigned long devid, const char *name); -int
> ad_dpot_remove(struct device *dev);
> +void ad_dpot_remove(struct device *dev);
>
> #endif
> --
> 2.30.2
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 08/20] mfd: mc13xxx: Make mc13xxx_common_exit() return void
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
0 siblings, 0 replies; 7+ messages in thread
From: Lee Jones @ 2021-10-21 10:18 UTC (permalink / raw)
To: Uwe Kleine-König; +Cc: Mark Brown, kernel, linux-kernel, linux-spi
On Tue, 12 Oct 2021, Uwe Kleine-König wrote:
> Up to now mc13xxx_common_exit() 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/mfd/mc13xxx-core.c | 4 +---
> drivers/mfd/mc13xxx-i2c.c | 3 ++-
> drivers/mfd/mc13xxx-spi.c | 3 ++-
> drivers/mfd/mc13xxx.h | 2 +-
> 4 files changed, 6 insertions(+), 6 deletions(-)
Applied, thanks.
--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 10/20] mfd: tps65912: Make tps65912_device_exit() return void
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
0 siblings, 0 replies; 7+ messages in thread
From: Lee Jones @ 2021-10-21 10:19 UTC (permalink / raw)
To: Uwe Kleine-König; +Cc: Mark Brown, kernel, linux-kernel, linux-spi
On Tue, 12 Oct 2021, Uwe Kleine-König wrote:
> Up to now tps65912_device_exit() 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/mfd/tps65912-core.c | 4 +---
> drivers/mfd/tps65912-i2c.c | 4 +++-
> drivers/mfd/tps65912-spi.c | 4 +++-
> include/linux/mfd/tps65912.h | 2 +-
> 4 files changed, 8 insertions(+), 6 deletions(-)
Applied, thanks.
--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-10-21 10:19 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
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 ` [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 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
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox