ARM: 9048/1: sa1111: make sa1111 bus's remove callback return void
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Thu, 14 Jan 2021 16:31:09 +0000 (17:31 +0100)
committerRussell King <rmk+kernel@armlinux.org.uk>
Mon, 1 Feb 2021 19:42:13 +0000 (19:42 +0000)
The driver core ignores the return value of struct device_driver::remove
because there is only little that can be done. To simplify the quest to
make this function return void, let struct sa1111_driver::remove return
void, too. All users already unconditionally return 0, this commit makes
it obvious that returning an error code is a bad idea and ensures future
users behave accordingly.

Link: https://lore.kernel.org/r/20201126114724.2028511-1-u.kleine-koenig@pengutronix.de
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
arch/arm/common/sa1111.c
arch/arm/include/asm/hardware/sa1111.h
drivers/input/serio/sa1111ps2.c
drivers/pcmcia/sa1111_generic.c
drivers/usb/host/ohci-sa1111.c

index f89c1ea..ff5e0d0 100644 (file)
@@ -1368,11 +1368,11 @@ static int sa1111_bus_remove(struct device *dev)
 {
        struct sa1111_dev *sadev = to_sa1111_device(dev);
        struct sa1111_driver *drv = SA1111_DRV(dev->driver);
-       int ret = 0;
 
        if (drv->remove)
-               ret = drv->remove(sadev);
-       return ret;
+               drv->remove(sadev);
+
+       return 0;
 }
 
 struct bus_type sa1111_bus_type = {
index d134b9a..2e70db6 100644 (file)
@@ -403,7 +403,7 @@ struct sa1111_driver {
        struct device_driver    drv;
        unsigned int            devid;
        int (*probe)(struct sa1111_dev *);
-       int (*remove)(struct sa1111_dev *);
+       void (*remove)(struct sa1111_dev *);
 };
 
 #define SA1111_DRV(_d) container_of((_d), struct sa1111_driver, drv)
index 7b8ceb7..68fac48 100644 (file)
@@ -344,7 +344,7 @@ static int ps2_probe(struct sa1111_dev *dev)
 /*
  * Remove one device from this driver.
  */
-static int ps2_remove(struct sa1111_dev *dev)
+static void ps2_remove(struct sa1111_dev *dev)
 {
        struct ps2if *ps2if = sa1111_get_drvdata(dev);
 
@@ -353,8 +353,6 @@ static int ps2_remove(struct sa1111_dev *dev)
        sa1111_set_drvdata(dev, NULL);
 
        kfree(ps2if);
-
-       return 0;
 }
 
 /*
index 1178341..29fdd17 100644 (file)
@@ -238,7 +238,7 @@ static int pcmcia_probe(struct sa1111_dev *dev)
        return ret;
 }
 
-static int pcmcia_remove(struct sa1111_dev *dev)
+static void pcmcia_remove(struct sa1111_dev *dev)
 {
        struct sa1111_pcmcia_socket *next, *s = dev_get_drvdata(&dev->dev);
 
@@ -252,7 +252,6 @@ static int pcmcia_remove(struct sa1111_dev *dev)
 
        release_mem_region(dev->res.start, 512);
        sa1111_disable_device(dev);
-       return 0;
 }
 
 static struct sa1111_driver pcmcia_driver = {
index 8e19a5e..feca826 100644 (file)
@@ -236,7 +236,7 @@ static int ohci_hcd_sa1111_probe(struct sa1111_dev *dev)
  * Reverses the effect of ohci_hcd_sa1111_probe(), first invoking
  * the HCD's stop() method.
  */
-static int ohci_hcd_sa1111_remove(struct sa1111_dev *dev)
+static void ohci_hcd_sa1111_remove(struct sa1111_dev *dev)
 {
        struct usb_hcd *hcd = sa1111_get_drvdata(dev);
 
@@ -244,8 +244,6 @@ static int ohci_hcd_sa1111_remove(struct sa1111_dev *dev)
        sa1111_stop_hc(dev);
        release_mem_region(hcd->rsrc_start, hcd->rsrc_len);
        usb_put_hcd(hcd);
-
-       return 0;
 }
 
 static void ohci_hcd_sa1111_shutdown(struct device *_dev)