[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <a66ab86f-d5da-0462-81c9-48469721d229@samsung.com>
Date: Wed, 10 Aug 2016 10:36:00 +0200
From: Sylwester Nawrocki <s.nawrocki@...sung.com>
To: Lee Jones <lee.jones@...aro.org>
Cc: broonie@...nel.org, robh@...nel.org, alsa-devel@...a-project.org,
devicetree@...r.kernel.org, ideal.song@...sung.com,
inki.dae@...sung.com, b.zolnierkie@...sung.com,
linux-samsung-soc@...r.kernel.org, linux-kernel@...r.kernel.org,
Beomho Seo <beomho.seo@...sung.com>
Subject: Re: [PATCH v4 2/4] mfd: Add Samsung Exynos Low Power Audio Subsystem
driver
On 08/09/2016 10:50 PM, Lee Jones wrote:
> On Tue, 09 Aug 2016, Sylwester Nawrocki wrote:
>
>> > On 08/09/2016 05:05 PM, Lee Jones wrote:
>>>> > >> +static SIMPLE_DEV_PM_OPS(lpass_pm_ops, exynos_lpass_suspend,
>>>>> > >> > + exynos_lpass_resume);
>>> > > Put this up by the PM functions.
>> >
>> > Sorry, I don't understand this comment, which PM functions do you
>> > mean exactly?
> *_suspend and *_resume. PM == Power Management.
>
> You also need to place the functions in side some CONFIG_PM_SLEEP
> guards. Grep around, you'll see what I mean.
OK, but couldn't we just leave it with that SIMPLE_DEV_PM_OPS()
macro? It saves us an #ifdef ugliness and if I actually grep
drivers/mfd most of the drivers use either SIMPLE_DEV_PM_OPS() or
SET_SYSTEM_SLEEP_PM_OPS. Are you asking me to change the above to:
static const struct dev_pm_ops exynos_lpass_pm_ops = {
#ifdef CONFIG_PM_SLEEP
.suspend = exynos_lpass_suspend,
.resume = exynos_lpass_resume,
.freeze = exynos_lpass_suspend,
.thaw = exynos_lpass_resume,
.poweroff = exynos_lpass_suspend,
.restore = exynos_lpass_resume,
#endif
}
or perhaps
static const struct dev_pm_ops exynos_lpass_pm_ops = {
SET_SYSTEM_SLEEP_PM_OPS(exynos_lpass_suspend, exynos_lpass_resume)
}
?
I agree about the CONFIG_PM_SLEEP guards. There is very little
chance though the LPASS driver will ever be used with
CONFIG_PM_SLEEP disabled. How about adding __maybe_unused attribute
to the *_suspend/*_resume functions then? I can see this pattern
used already in drivers/mfd.
--
Thanks,
Sylwester
Powered by blists - more mailing lists