2023-08-07 11:30:22

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] crypto: caam: fix PM operations definition

From: Arnd Bergmann <[email protected]>

The newly added PM operations use the deprecated SIMPLE_DEV_PM_OPS() macro,
causing a warning in some configurations:

drivers/crypto/caam/ctrl.c:828:12: error: 'caam_ctrl_resume' defined but not used [-Werror=unused-function]
828 | static int caam_ctrl_resume(struct device *dev)
| ^~~~~~~~~~~~~~~~
drivers/crypto/caam/ctrl.c:818:12: error: 'caam_ctrl_suspend' defined but not used [-Werror=unused-function]
818 | static int caam_ctrl_suspend(struct device *dev)
| ^~~~~~~~~~~~~~~~~
drivers/crypto/caam/jr.c:732:12: error: 'caam_jr_resume' defined but not used [-Werror=unused-function]
732 | static int caam_jr_resume(struct device *dev)
| ^~~~~~~~~~~~~~
drivers/crypto/caam/jr.c:687:12: error: 'caam_jr_suspend' defined but not used [-Werror=unused-function]
687 | static int caam_jr_suspend(struct device *dev)
| ^~~~~~~~~~~~~~~

Use the normal DEFINE_SIMPLE_DEV_PM_OPS() variant now, and use pm_ptr() to
completely eliminate the structure in configs without CONFIG_PM.

Fixes: 322d74752c28a ("crypto: caam - add power management support")
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/crypto/caam/ctrl.c | 4 ++--
drivers/crypto/caam/jr.c | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/crypto/caam/ctrl.c b/drivers/crypto/caam/ctrl.c
index a7a4583107f41..2a228a36fa15a 100644
--- a/drivers/crypto/caam/ctrl.c
+++ b/drivers/crypto/caam/ctrl.c
@@ -841,7 +841,7 @@ static int caam_ctrl_resume(struct device *dev)
return ret;
}

-static SIMPLE_DEV_PM_OPS(caam_ctrl_pm_ops, caam_ctrl_suspend, caam_ctrl_resume);
+static DEFINE_SIMPLE_DEV_PM_OPS(caam_ctrl_pm_ops, caam_ctrl_suspend, caam_ctrl_resume);

/* Probe routine for CAAM top (controller) level */
static int caam_probe(struct platform_device *pdev)
@@ -1138,7 +1138,7 @@ static struct platform_driver caam_driver = {
.driver = {
.name = "caam",
.of_match_table = caam_match,
- .pm = &caam_ctrl_pm_ops,
+ .pm = pm_ptr(&caam_ctrl_pm_ops),
},
.probe = caam_probe,
};
diff --git a/drivers/crypto/caam/jr.c b/drivers/crypto/caam/jr.c
index 316180d26f8ae..767fbf052536a 100644
--- a/drivers/crypto/caam/jr.c
+++ b/drivers/crypto/caam/jr.c
@@ -794,7 +794,7 @@ static int caam_jr_resume(struct device *dev)
return 0;
}

-static SIMPLE_DEV_PM_OPS(caam_jr_pm_ops, caam_jr_suspend, caam_jr_resume);
+static DEFINE_SIMPLE_DEV_PM_OPS(caam_jr_pm_ops, caam_jr_suspend, caam_jr_resume);

static const struct of_device_id caam_jr_match[] = {
{
@@ -811,7 +811,7 @@ static struct platform_driver caam_jr_driver = {
.driver = {
.name = "caam_jr",
.of_match_table = caam_jr_match,
- .pm = &caam_jr_pm_ops,
+ .pm = pm_ptr(&caam_jr_pm_ops),
},
.probe = caam_jr_probe,
.remove = caam_jr_remove,
--
2.39.2



2023-08-08 16:51:37

by Meenakshi Aggarwal

[permalink] [raw]
Subject: RE: [PATCH] crypto: caam: fix PM operations definition

Reviewed-by: Meenakshi Aggarwal <[email protected]>

> -----Original Message-----
> From: Arnd Bergmann <[email protected]>
> Sent: Monday, August 7, 2023 4:47 PM
> To: Horia Geanta <[email protected]>; Pankaj Gupta
> <[email protected]>; Gaurav Jain <[email protected]>; Herbert Xu
> <[email protected]>; David S. Miller <[email protected]>;
> Meenakshi Aggarwal <[email protected]>; Victoria Milhoan
> <[email protected]>; Franck Lenormand
> <[email protected]>
> Cc: Arnd Bergmann <[email protected]>; Vipul Kumar
> <[email protected]>; Christophe JAILLET
> <[email protected]>; Dan Douglass <[email protected]>;
> [email protected]; [email protected]
> Subject: [PATCH] crypto: caam: fix PM operations definition
>
> From: Arnd Bergmann <[email protected]>
>
> The newly added PM operations use the deprecated SIMPLE_DEV_PM_OPS()
> macro, causing a warning in some configurations:
>
> drivers/crypto/caam/ctrl.c:828:12: error: 'caam_ctrl_resume' defined but not
> used [-Werror=unused-function]
> 828 | static int caam_ctrl_resume(struct device *dev)
> | ^~~~~~~~~~~~~~~~
> drivers/crypto/caam/ctrl.c:818:12: error: 'caam_ctrl_suspend' defined but not
> used [-Werror=unused-function]
> 818 | static int caam_ctrl_suspend(struct device *dev)
> | ^~~~~~~~~~~~~~~~~
> drivers/crypto/caam/jr.c:732:12: error: 'caam_jr_resume' defined but not used
> [-Werror=unused-function]
> 732 | static int caam_jr_resume(struct device *dev)
> | ^~~~~~~~~~~~~~
> drivers/crypto/caam/jr.c:687:12: error: 'caam_jr_suspend' defined but not used
> [-Werror=unused-function]
> 687 | static int caam_jr_suspend(struct device *dev)
> | ^~~~~~~~~~~~~~~
>
> Use the normal DEFINE_SIMPLE_DEV_PM_OPS() variant now, and use pm_ptr()
> to completely eliminate the structure in configs without CONFIG_PM.
>
> Fixes: 322d74752c28a ("crypto: caam - add power management support")
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> drivers/crypto/caam/ctrl.c | 4 ++--
> drivers/crypto/caam/jr.c | 4 ++--
> 2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/crypto/caam/ctrl.c b/drivers/crypto/caam/ctrl.c index
> a7a4583107f41..2a228a36fa15a 100644
> --- a/drivers/crypto/caam/ctrl.c
> +++ b/drivers/crypto/caam/ctrl.c
> @@ -841,7 +841,7 @@ static int caam_ctrl_resume(struct device *dev)
> return ret;
> }
>
> -static SIMPLE_DEV_PM_OPS(caam_ctrl_pm_ops, caam_ctrl_suspend,
> caam_ctrl_resume);
> +static DEFINE_SIMPLE_DEV_PM_OPS(caam_ctrl_pm_ops, caam_ctrl_suspend,
> +caam_ctrl_resume);
>
> /* Probe routine for CAAM top (controller) level */ static int caam_probe(struct
> platform_device *pdev) @@ -1138,7 +1138,7 @@ static struct platform_driver
> caam_driver = {
> .driver = {
> .name = "caam",
> .of_match_table = caam_match,
> - .pm = &caam_ctrl_pm_ops,
> + .pm = pm_ptr(&caam_ctrl_pm_ops),
> },
> .probe = caam_probe,
> };
> diff --git a/drivers/crypto/caam/jr.c b/drivers/crypto/caam/jr.c index
> 316180d26f8ae..767fbf052536a 100644
> --- a/drivers/crypto/caam/jr.c
> +++ b/drivers/crypto/caam/jr.c
> @@ -794,7 +794,7 @@ static int caam_jr_resume(struct device *dev)
> return 0;
> }
>
> -static SIMPLE_DEV_PM_OPS(caam_jr_pm_ops, caam_jr_suspend,
> caam_jr_resume);
> +static DEFINE_SIMPLE_DEV_PM_OPS(caam_jr_pm_ops, caam_jr_suspend,
> +caam_jr_resume);
>
> static const struct of_device_id caam_jr_match[] = {
> {
> @@ -811,7 +811,7 @@ static struct platform_driver caam_jr_driver = {
> .driver = {
> .name = "caam_jr",
> .of_match_table = caam_jr_match,
> - .pm = &caam_jr_pm_ops,
> + .pm = pm_ptr(&caam_jr_pm_ops),
> },
> .probe = caam_jr_probe,
> .remove = caam_jr_remove,
> --
> 2.39.2