2023-04-20 21:47:40

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] remoteproc: imx_dsp_rproc: use modern pm_ops

From: Arnd Bergmann <[email protected]>

Without CONFIG_PM, the driver warns about unused functions:

drivers/remoteproc/imx_dsp_rproc.c:1210:12: error: 'imx_dsp_runtime_suspend' defined but not used [-Werror=unused-function]
1210 | static int imx_dsp_runtime_suspend(struct device *dev)
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/remoteproc/imx_dsp_rproc.c:1178:12: error: 'imx_dsp_runtime_resume' defined but not used [-Werror=unused-function]
1178 | static int imx_dsp_runtime_resume(struct device *dev)
| ^~~~~~~~~~~~~~~~~~~~~~

Change the old SET_SYSTEM_SLEEP_PM_OPS()/SET_RUNTIME_PM_OPS()
helpers to their modern replacements that avoid the warning,
and remove the now unnecessary __maybe_unused annotations
on the other PM helper functions.

Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/remoteproc/imx_dsp_rproc.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/drivers/remoteproc/imx_dsp_rproc.c b/drivers/remoteproc/imx_dsp_rproc.c
index cab06dbf37fb..2d75dea43f20 100644
--- a/drivers/remoteproc/imx_dsp_rproc.c
+++ b/drivers/remoteproc/imx_dsp_rproc.c
@@ -1243,7 +1243,7 @@ static void imx_dsp_load_firmware(const struct firmware *fw, void *context)
release_firmware(fw);
}

-static __maybe_unused int imx_dsp_suspend(struct device *dev)
+static int imx_dsp_suspend(struct device *dev)
{
struct rproc *rproc = dev_get_drvdata(dev);
struct imx_dsp_rproc *priv = rproc->priv;
@@ -1278,7 +1278,7 @@ static __maybe_unused int imx_dsp_suspend(struct device *dev)
return pm_runtime_force_suspend(dev);
}

-static __maybe_unused int imx_dsp_resume(struct device *dev)
+static int imx_dsp_resume(struct device *dev)
{
struct rproc *rproc = dev_get_drvdata(dev);
int ret = 0;
@@ -1312,9 +1312,8 @@ static __maybe_unused int imx_dsp_resume(struct device *dev)
}

static const struct dev_pm_ops imx_dsp_rproc_pm_ops = {
- SET_SYSTEM_SLEEP_PM_OPS(imx_dsp_suspend, imx_dsp_resume)
- SET_RUNTIME_PM_OPS(imx_dsp_runtime_suspend,
- imx_dsp_runtime_resume, NULL)
+ SYSTEM_SLEEP_PM_OPS(imx_dsp_suspend, imx_dsp_resume)
+ RUNTIME_PM_OPS(imx_dsp_runtime_suspend, imx_dsp_runtime_resume, NULL)
};

static const struct of_device_id imx_dsp_rproc_of_match[] = {
@@ -1332,7 +1331,7 @@ static struct platform_driver imx_dsp_rproc_driver = {
.driver = {
.name = "imx-dsp-rproc",
.of_match_table = imx_dsp_rproc_of_match,
- .pm = &imx_dsp_rproc_pm_ops,
+ .pm = pm_ptr(&imx_dsp_rproc_pm_ops),
},
};
module_platform_driver(imx_dsp_rproc_driver);
--
2.39.2


2023-04-21 07:07:40

by Mukesh Ojha

[permalink] [raw]
Subject: Re: [PATCH] remoteproc: imx_dsp_rproc: use modern pm_ops



On 4/21/2023 3:06 AM, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> Without CONFIG_PM, the driver warns about unused functions:
>
> drivers/remoteproc/imx_dsp_rproc.c:1210:12: error: 'imx_dsp_runtime_suspend' defined but not used [-Werror=unused-function]
> 1210 | static int imx_dsp_runtime_suspend(struct device *dev)
> | ^~~~~~~~~~~~~~~~~~~~~~~
> drivers/remoteproc/imx_dsp_rproc.c:1178:12: error: 'imx_dsp_runtime_resume' defined but not used [-Werror=unused-function]
> 1178 | static int imx_dsp_runtime_resume(struct device *dev)
> | ^~~~~~~~~~~~~~~~~~~~~~
>
> Change the old SET_SYSTEM_SLEEP_PM_OPS()/SET_RUNTIME_PM_OPS()
> helpers to their modern replacements that avoid the warning,
> and remove the now unnecessary __maybe_unused annotations
> on the other PM helper functions.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> drivers/remoteproc/imx_dsp_rproc.c | 11 +++++------
> 1 file changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/remoteproc/imx_dsp_rproc.c b/drivers/remoteproc/imx_dsp_rproc.c
> index cab06dbf37fb..2d75dea43f20 100644
> --- a/drivers/remoteproc/imx_dsp_rproc.c
> +++ b/drivers/remoteproc/imx_dsp_rproc.c
> @@ -1243,7 +1243,7 @@ static void imx_dsp_load_firmware(const struct firmware *fw, void *context)
> release_firmware(fw);
> }
>
> -static __maybe_unused int imx_dsp_suspend(struct device *dev)
> +static int imx_dsp_suspend(struct device *dev)
> {
> struct rproc *rproc = dev_get_drvdata(dev);
> struct imx_dsp_rproc *priv = rproc->priv;
> @@ -1278,7 +1278,7 @@ static __maybe_unused int imx_dsp_suspend(struct device *dev)
> return pm_runtime_force_suspend(dev);
> }
>
> -static __maybe_unused int imx_dsp_resume(struct device *dev)
> +static int imx_dsp_resume(struct device *dev)
> {
> struct rproc *rproc = dev_get_drvdata(dev);
> int ret = 0;
> @@ -1312,9 +1312,8 @@ static __maybe_unused int imx_dsp_resume(struct device *dev)
> }
>
> static const struct dev_pm_ops imx_dsp_rproc_pm_ops = {
> - SET_SYSTEM_SLEEP_PM_OPS(imx_dsp_suspend, imx_dsp_resume)
> - SET_RUNTIME_PM_OPS(imx_dsp_runtime_suspend,
> - imx_dsp_runtime_resume, NULL)
> + SYSTEM_SLEEP_PM_OPS(imx_dsp_suspend, imx_dsp_resume)
> + RUNTIME_PM_OPS(imx_dsp_runtime_suspend, imx_dsp_runtime_resume, NULL)
> };
>
> static const struct of_device_id imx_dsp_rproc_of_match[] = {
> @@ -1332,7 +1331,7 @@ static struct platform_driver imx_dsp_rproc_driver = {
> .driver = {
> .name = "imx-dsp-rproc",
> .of_match_table = imx_dsp_rproc_of_match,
> - .pm = &imx_dsp_rproc_pm_ops,
> + .pm = pm_ptr(&imx_dsp_rproc_pm_ops),

LGTM.
Reviewed-by: Mukesh Ojha <[email protected]>

-Mukesh
> },
> };
> module_platform_driver(imx_dsp_rproc_driver);

2023-04-21 10:45:36

by Iuliana Prodan

[permalink] [raw]
Subject: Re: [PATCH] remoteproc: imx_dsp_rproc: use modern pm_ops

On 4/21/2023 12:36 AM, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> Without CONFIG_PM, the driver warns about unused functions:
>
> drivers/remoteproc/imx_dsp_rproc.c:1210:12: error: 'imx_dsp_runtime_suspend' defined but not used [-Werror=unused-function]
> 1210 | static int imx_dsp_runtime_suspend(struct device *dev)
> | ^~~~~~~~~~~~~~~~~~~~~~~
> drivers/remoteproc/imx_dsp_rproc.c:1178:12: error: 'imx_dsp_runtime_resume' defined but not used [-Werror=unused-function]
> 1178 | static int imx_dsp_runtime_resume(struct device *dev)
> | ^~~~~~~~~~~~~~~~~~~~~~
>
> Change the old SET_SYSTEM_SLEEP_PM_OPS()/SET_RUNTIME_PM_OPS()
> helpers to their modern replacements that avoid the warning,
> and remove the now unnecessary __maybe_unused annotations
> on the other PM helper functions.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
Reviewed-by: Iuliana Prodan <[email protected]>

Thanks,
Iulia

> ---
> drivers/remoteproc/imx_dsp_rproc.c | 11 +++++------
> 1 file changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/remoteproc/imx_dsp_rproc.c b/drivers/remoteproc/imx_dsp_rproc.c
> index cab06dbf37fb..2d75dea43f20 100644
> --- a/drivers/remoteproc/imx_dsp_rproc.c
> +++ b/drivers/remoteproc/imx_dsp_rproc.c
> @@ -1243,7 +1243,7 @@ static void imx_dsp_load_firmware(const struct firmware *fw, void *context)
> release_firmware(fw);
> }
>
> -static __maybe_unused int imx_dsp_suspend(struct device *dev)
> +static int imx_dsp_suspend(struct device *dev)
> {
> struct rproc *rproc = dev_get_drvdata(dev);
> struct imx_dsp_rproc *priv = rproc->priv;
> @@ -1278,7 +1278,7 @@ static __maybe_unused int imx_dsp_suspend(struct device *dev)
> return pm_runtime_force_suspend(dev);
> }
>
> -static __maybe_unused int imx_dsp_resume(struct device *dev)
> +static int imx_dsp_resume(struct device *dev)
> {
> struct rproc *rproc = dev_get_drvdata(dev);
> int ret = 0;
> @@ -1312,9 +1312,8 @@ static __maybe_unused int imx_dsp_resume(struct device *dev)
> }
>
> static const struct dev_pm_ops imx_dsp_rproc_pm_ops = {
> - SET_SYSTEM_SLEEP_PM_OPS(imx_dsp_suspend, imx_dsp_resume)
> - SET_RUNTIME_PM_OPS(imx_dsp_runtime_suspend,
> - imx_dsp_runtime_resume, NULL)
> + SYSTEM_SLEEP_PM_OPS(imx_dsp_suspend, imx_dsp_resume)
> + RUNTIME_PM_OPS(imx_dsp_runtime_suspend, imx_dsp_runtime_resume, NULL)
> };
>
> static const struct of_device_id imx_dsp_rproc_of_match[] = {
> @@ -1332,7 +1331,7 @@ static struct platform_driver imx_dsp_rproc_driver = {
> .driver = {
> .name = "imx-dsp-rproc",
> .of_match_table = imx_dsp_rproc_of_match,
> - .pm = &imx_dsp_rproc_pm_ops,
> + .pm = pm_ptr(&imx_dsp_rproc_pm_ops),
> },
> };
> module_platform_driver(imx_dsp_rproc_driver);

2023-05-09 20:13:51

by Mathieu Poirier

[permalink] [raw]
Subject: Re: [PATCH] remoteproc: imx_dsp_rproc: use modern pm_ops

On Thu, Apr 20, 2023 at 11:36:04PM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> Without CONFIG_PM, the driver warns about unused functions:
>
> drivers/remoteproc/imx_dsp_rproc.c:1210:12: error: 'imx_dsp_runtime_suspend' defined but not used [-Werror=unused-function]
> 1210 | static int imx_dsp_runtime_suspend(struct device *dev)
> | ^~~~~~~~~~~~~~~~~~~~~~~
> drivers/remoteproc/imx_dsp_rproc.c:1178:12: error: 'imx_dsp_runtime_resume' defined but not used [-Werror=unused-function]
> 1178 | static int imx_dsp_runtime_resume(struct device *dev)
> | ^~~~~~~~~~~~~~~~~~~~~~
>
> Change the old SET_SYSTEM_SLEEP_PM_OPS()/SET_RUNTIME_PM_OPS()
> helpers to their modern replacements that avoid the warning,
> and remove the now unnecessary __maybe_unused annotations
> on the other PM helper functions.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> drivers/remoteproc/imx_dsp_rproc.c | 11 +++++------
> 1 file changed, 5 insertions(+), 6 deletions(-)
>

Applied.

Thanks,
Mathieu

> diff --git a/drivers/remoteproc/imx_dsp_rproc.c b/drivers/remoteproc/imx_dsp_rproc.c
> index cab06dbf37fb..2d75dea43f20 100644
> --- a/drivers/remoteproc/imx_dsp_rproc.c
> +++ b/drivers/remoteproc/imx_dsp_rproc.c
> @@ -1243,7 +1243,7 @@ static void imx_dsp_load_firmware(const struct firmware *fw, void *context)
> release_firmware(fw);
> }
>
> -static __maybe_unused int imx_dsp_suspend(struct device *dev)
> +static int imx_dsp_suspend(struct device *dev)
> {
> struct rproc *rproc = dev_get_drvdata(dev);
> struct imx_dsp_rproc *priv = rproc->priv;
> @@ -1278,7 +1278,7 @@ static __maybe_unused int imx_dsp_suspend(struct device *dev)
> return pm_runtime_force_suspend(dev);
> }
>
> -static __maybe_unused int imx_dsp_resume(struct device *dev)
> +static int imx_dsp_resume(struct device *dev)
> {
> struct rproc *rproc = dev_get_drvdata(dev);
> int ret = 0;
> @@ -1312,9 +1312,8 @@ static __maybe_unused int imx_dsp_resume(struct device *dev)
> }
>
> static const struct dev_pm_ops imx_dsp_rproc_pm_ops = {
> - SET_SYSTEM_SLEEP_PM_OPS(imx_dsp_suspend, imx_dsp_resume)
> - SET_RUNTIME_PM_OPS(imx_dsp_runtime_suspend,
> - imx_dsp_runtime_resume, NULL)
> + SYSTEM_SLEEP_PM_OPS(imx_dsp_suspend, imx_dsp_resume)
> + RUNTIME_PM_OPS(imx_dsp_runtime_suspend, imx_dsp_runtime_resume, NULL)
> };
>
> static const struct of_device_id imx_dsp_rproc_of_match[] = {
> @@ -1332,7 +1331,7 @@ static struct platform_driver imx_dsp_rproc_driver = {
> .driver = {
> .name = "imx-dsp-rproc",
> .of_match_table = imx_dsp_rproc_of_match,
> - .pm = &imx_dsp_rproc_pm_ops,
> + .pm = pm_ptr(&imx_dsp_rproc_pm_ops),
> },
> };
> module_platform_driver(imx_dsp_rproc_driver);
> --
> 2.39.2
>