]> git.baikalelectronics.ru Git - kernel.git/commitdiff
powerpc/platforms/83xx/suspend: Prevent unloading the driver
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Thu, 7 Jul 2022 06:14:40 +0000 (08:14 +0200)
committerMichael Ellerman <mpe@ellerman.id.au>
Thu, 28 Jul 2022 06:22:14 +0000 (16:22 +1000)
Returning an error in .remove() doesn't prevent a driver from being
unloaded. On unbind this only results in an error message, but the
device is remove anyhow.

I guess the author's idea of just returning -EPERM in .remove() was to
prevent unbinding a device. To achieve that set the suppress_bind_attrs
driver property and drop the useless .remove callback.

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

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Acked-by: Scott Wood <oss@buserror.net>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20220707061441.193869-2-u.kleine-koenig@pengutronix.de
arch/powerpc/platforms/83xx/suspend.c

index 30b7700a2c988e007b9559a6fe392ddb70b19129..309f42ab63d40dffff7395cc67eef29cbb3f817f 100644 (file)
@@ -421,18 +421,13 @@ out:
        return ret;
 }
 
-static int pmc_remove(struct platform_device *ofdev)
-{
-       return -EPERM;
-};
-
 static struct platform_driver pmc_driver = {
        .driver = {
                .name = "mpc83xx-pmc",
                .of_match_table = pmc_match,
+               .suppress_bind_attrs = true,
        },
        .probe = pmc_probe,
-       .remove = pmc_remove
 };
 
 builtin_platform_driver(pmc_driver);