[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <56a5820e-9cd7-aa49-7ce8-9547f355986e@quicinc.com>
Date: Mon, 29 Nov 2021 12:53:39 +0530
From: Maulik Shah <quic_mkshah@...cinc.com>
To: Shawn Guo <shawn.guo@...aro.org>, Marc Zyngier <maz@...nel.org>,
"Thomas Gleixner" <tglx@...utronix.de>
CC: Bjorn Andersson <bjorn.andersson@...aro.org>,
Rob Herring <robh+dt@...nel.org>,
Loic Poulain <loic.poulain@...aro.org>,
<devicetree@...r.kernel.org>, <linux-arm-msm@...r.kernel.org>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2 2/2] irqchip: Add Qualcomm MPM controller driver
Hi Shawn,
On 11/26/2021 3:05 PM, Shawn Guo wrote:
> +static int __maybe_unused qcom_mpm_suspend_late(struct device *dev)
why maybe unused?
> +{
> + struct qcom_mpm_priv *priv = dev_get_drvdata(dev);
> + int i, ret;
> +
> + for (i = 0; i < priv->reg_stride; i++)
> + qcom_mpm_write(priv, MPM_REG_STATUS, i, 0);
> +
> + /* Notify RPM to write vMPM into HW */
> + ret = mbox_send_message(priv->mbox_chan, NULL);
> + if (ret < 0)
> + return ret;
> +
> + return 0;
> +}
> +
> +static int __maybe_unused qcom_mpm_resume_early(struct device *dev)
> +{
> + /* Nothing to do for now */
> + return 0;
> +}
> +
> +static const struct dev_pm_ops qcom_mpm_pm_ops = {
> + SET_LATE_SYSTEM_SLEEP_PM_OPS(qcom_mpm_suspend_late,
> + qcom_mpm_resume_early)
> +};
This is not limited to suspend, you will need to notify RPM during
deepest cpu idle state entry as well, since MPM may be monitoring
interrupts in that case too.
This may be handled for both suspend/CPUidle using cpu pm notifications
where in last cpu entering deepest idle may notify RPM (something
similar to what rpmh-rsc.c does)
Thanks,
Maulik
Powered by blists - more mailing lists