[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <012f0c40-5b69-0846-adba-b67850c20a12@xs4all.nl>
Date: Tue, 18 Apr 2023 10:23:26 +0200
From: Hans Verkuil <hverkuil@...all.nl>
To: Laurent Pinchart <laurent.pinchart@...asonboard.com>
Cc: Arnd Bergmann <arnd@...nel.org>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Shawn Guo <shawnguo@...nel.org>,
Sascha Hauer <s.hauer@...gutronix.de>,
Dong Aisheng <aisheng.dong@....com>,
Guoniu Zhou <guoniu.zhou@....com>,
Stefan Riedmueller <s.riedmueller@...tec.de>,
Arnd Bergmann <arnd@...db.de>,
Pengutronix Kernel Team <kernel@...gutronix.de>,
Fabio Estevam <festevam@...il.com>,
NXP Linux Team <linux-imx@....com>,
Christian Hemp <c.hemp@...tec.de>,
Jacopo Mondi <jacopo@...ndi.org>, linux-media@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] media: nxp: ignore unused suspend operations
Hi Arnd,
On 18/04/2023 10:19, Laurent Pinchart wrote:
> On Tue, Apr 18, 2023 at 10:04:13AM +0200, Hans Verkuil wrote:
>> Hi Arnd,
>>
>> On 18/04/2023 09:15, Arnd Bergmann wrote:
>>> From: Arnd Bergmann <arnd@...db.de>
>>>
>>> gcc warns about some functions being unused when CONFIG_PM is
>>> disabled:
>>
>> ???
>>
>> The Kconfig has a:
>>
>> depends on HAS_DMA && PM
>>
>> So how can this be compiled with CONFIG_PM not set?
>>
>> Am I missing something?
>
> The warning appears when CONFIG_PM_SLEEP is disabled. The pm_ptr()
> change is thus not useful, but the switch to SYSTEM_SLEEP_PM_OPS() and
> RUNTIME_PM_OPS() make a difference.
Can you post a v3?
Thank you!
Hans
>
>>> drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c:328:12: error: 'mxc_isi_pm_resume' defined but not used [-Werror=unused-function]
>>> 328 | static int mxc_isi_pm_resume(struct device *dev)
>>> | ^~~~~~~~~~~~~~~~~
>>> drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c:314:12: error: 'mxc_isi_pm_suspend' defined but not used [-Werror=unused-function]
>>> 314 | static int mxc_isi_pm_suspend(struct device *dev)
>>> | ^~~~~~~~~~~~~~~~~~
>>>
>>> Use the modern SYSTEM_SLEEP_PM_OPS()/RUNTIME_PM_OPS() helpers in place
>>> of the old SET_SYSTEM_SLEEP_PM_OPS()/SET_RUNTIME_PM_OPS() ones, and add
>>> a pm_ptr() check to ensure they get dropped by the compiler.
>>>
>>> Fixes: cf21f328fcaf ("media: nxp: Add i.MX8 ISI driver")
>>> Signed-off-by: Arnd Bergmann <arnd@...db.de>
>>> ---
>>> drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c | 6 +++---
>>> 1 file changed, 3 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c b/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c
>>> index 238521622b75..253e77189b69 100644
>>> --- a/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c
>>> +++ b/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c
>>> @@ -378,8 +378,8 @@ static int mxc_isi_runtime_resume(struct device *dev)
>>> }
>>>
>>> static const struct dev_pm_ops mxc_isi_pm_ops = {
>>> - SET_SYSTEM_SLEEP_PM_OPS(mxc_isi_pm_suspend, mxc_isi_pm_resume)
>>> - SET_RUNTIME_PM_OPS(mxc_isi_runtime_suspend, mxc_isi_runtime_resume, NULL)
>>> + SYSTEM_SLEEP_PM_OPS(mxc_isi_pm_suspend, mxc_isi_pm_resume)
>>> + RUNTIME_PM_OPS(mxc_isi_runtime_suspend, mxc_isi_runtime_resume, NULL)
>>> };
>>>
>>> /* -----------------------------------------------------------------------------
>>> @@ -528,7 +528,7 @@ static struct platform_driver mxc_isi_driver = {
>>> .driver = {
>>> .of_match_table = mxc_isi_of_match,
>>> .name = MXC_ISI_DRIVER_NAME,
>>> - .pm = &mxc_isi_pm_ops,
>>> + .pm = pm_ptr(&mxc_isi_pm_ops),
>>> }
>>> };
>>> module_platform_driver(mxc_isi_driver);
>
Powered by blists - more mailing lists