diff options
author | Uwe Kleine-König <u.kleine-koenig@pengutronix.de> | 2021-01-28 10:10:48 +0100 |
---|---|---|
committer | Alexandre Belloni <alexandre.belloni@bootlin.com> | 2021-02-02 00:16:57 +0100 |
commit | dd9267034c0e364b49261c3e0070b863286d1242 (patch) | |
tree | 2d1206e6de7b4028d9a472d4b03f8e6e3a770b1f | |
parent | 7456fea589c6ad3422b0c188871ae80e1d307737 (diff) |
i3c: Make remove callback return void
The driver core ignores the return value of struct bus_type::remove()
because there is only little that can be done. To simplify the quest to
make this function return void, let struct i3c_driver::remove() return
void, too. This makes it obvious that returning an error code is
a bad idea and future driver authors cannot get that wrong.
Up to now there are no drivers with a remove callback, so there is no
need to adapt drivers.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Link: https://lore.kernel.org/r/20210128091048.17006-2-u.kleine-koenig@pengutronix.de
-rw-r--r-- | drivers/i3c/master.c | 10 | ||||
-rw-r--r-- | include/linux/i3c/device.h | 2 |
2 files changed, 4 insertions, 8 deletions
diff --git a/drivers/i3c/master.c b/drivers/i3c/master.c index 57a4f699eb8d..f8e9b7305c13 100644 --- a/drivers/i3c/master.c +++ b/drivers/i3c/master.c @@ -326,17 +326,13 @@ static int i3c_device_remove(struct device *dev) { struct i3c_device *i3cdev = dev_to_i3cdev(dev); struct i3c_driver *driver = drv_to_i3cdrv(dev->driver); - int ret = 0; - if (driver->remove) { - ret = driver->remove(i3cdev); - if (ret) - return ret; - } + if (driver->remove) + driver->remove(i3cdev); i3c_device_free_ibi(i3cdev); - return ret; + return 0; } struct bus_type i3c_bus_type = { diff --git a/include/linux/i3c/device.h b/include/linux/i3c/device.h index de102e4418ab..8242e13e7b0b 100644 --- a/include/linux/i3c/device.h +++ b/include/linux/i3c/device.h @@ -176,7 +176,7 @@ struct i3c_device; struct i3c_driver { struct device_driver driver; int (*probe)(struct i3c_device *dev); - int (*remove)(struct i3c_device *dev); + void (*remove)(struct i3c_device *dev); const struct i3c_device_id *id_table; }; |