Re: [PATCH] ASoC: qcom: lpass-sc7180: Add maybe_unused tag for system PM ops

From: Matthias Kaehlcke
Date: Tue Nov 29 2022 - 15:08:47 EST


On Tue, Nov 29, 2022 at 09:28:33PM +0530, Srinivasa Rao Mandadapu wrote:
> Thanks for your tie Nathan!!!
>
> On 11/29/2022 9:15 PM, Nathan Chancellor wrote:
> > On Tue, Nov 29, 2022 at 06:23:48PM +0530, Srinivasa Rao Mandadapu wrote:
> > > Add __maybe_unused tag for system PM ops suspend and resume.
> > > This is required to fix allmodconfig compilation issue.
> > > Fixes: c3bf7699747c ("ASoC: qcom: lpass-sc7280: Add system suspend/resume PM ops")
> > >
> > > Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@xxxxxxxxxxx>
> > A better solution would be replacing SET_SYSTEM_SLEEP_PM_OPS() with
> > SYSTEM_SLEEP_PM_OPS(), which was added to avoid needing to add these
> > '__maybe_unused' attributes to these functions. See commit 1a3c7bb08826
> > ("PM: core: Add new *_PM_OPS macros, deprecate old ones") for more info.
>
> Tried this option but as this patch required for Kernel 5.4 version code
> base,
>
> SYSTEM_SLEEP_PM_OPS didn't work.

Older downstream trees needing a change shouldn't impact how a change is done
upstream. The change should be what's best for the upstream kernel. Downstream
kernels can do backports which might differ from the upstream solution or
pick the missing dependencies (which might not be too hard in this case).

> > > ---
> > > sound/soc/qcom/lpass-sc7180.c | 4 ++--
> > > 1 file changed, 2 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/sound/soc/qcom/lpass-sc7180.c b/sound/soc/qcom/lpass-sc7180.c
> > > index b96b85a..41db661 100644
> > > --- a/sound/soc/qcom/lpass-sc7180.c
> > > +++ b/sound/soc/qcom/lpass-sc7180.c
> > > @@ -163,14 +163,14 @@ static int sc7180_lpass_exit(struct platform_device *pdev)
> > > return 0;
> > > }
> > > -static int sc7180_lpass_dev_resume(struct device *dev)
> > > +static int __maybe_unused sc7180_lpass_dev_resume(struct device *dev)
> > > {
> > > struct lpass_data *drvdata = dev_get_drvdata(dev);
> > > return clk_bulk_prepare_enable(drvdata->num_clks, drvdata->clks);
> > > }
> > > -static int sc7180_lpass_dev_suspend(struct device *dev)
> > > +static int __maybe_unused sc7180_lpass_dev_suspend(struct device *dev)
> > > {
> > > struct lpass_data *drvdata = dev_get_drvdata(dev);
> > > --
> > > 2.7.4
> > >
> > >