mtd: spear_smi: Don't skip cleanup after mtd_device_unregister() failed
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Fri, 3 Jun 2022 21:07:50 +0000 (23:07 +0200)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Thu, 9 Jun 2022 13:06:18 +0000 (15:06 +0200)
If mtd_device_unregister() fails (which it doesn't when used correctly),
the resources bound by the nand chip should be freed anyhow as returning
an error value doesn't prevent the device getting unbound.

Instead use WARN_ON on the return value similar to how other drivers do
it.

This is a preparation for making platform remove callbacks return void.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20220603210758.148493-7-u.kleine-koenig@pengutronix.de
drivers/mtd/devices/spear_smi.c

index 24073518587fe7ca449fd61d7cc1dec078cffef5..f6febe6662dbbc67b1ce118fd23fae56f2ed0453 100644 (file)
@@ -1045,7 +1045,7 @@ static int spear_smi_remove(struct platform_device *pdev)
 {
        struct spear_smi *dev;
        struct spear_snor_flash *flash;
-       int ret, i;
+       int i;
 
        dev = platform_get_drvdata(pdev);
        if (!dev) {
@@ -1060,9 +1060,7 @@ static int spear_smi_remove(struct platform_device *pdev)
                        continue;
 
                /* clean up mtd stuff */
-               ret = mtd_device_unregister(&flash->mtd);
-               if (ret)
-                       dev_err(&pdev->dev, "error removing mtd\n");
+               WARN_ON(mtd_device_unregister(&flash->mtd));
        }
 
        clk_disable_unprepare(dev->clk);