Message ID | 20241007060642.1978049-5-quic_sibis@quicinc.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | firmware: arm_scmi: Misc Fixes | expand |
On 7.10.2024 8:06 AM, Sibi Sankar wrote: > The qcom-cpucp mailbox irq is expected to function during suspend-resume > cycle particularly when the scmi cpufreq driver can query the current > frequency using the get_level message after the cpus are brought up during > resume. Hence mark the irq with IRQF_NO_SUSPEND flag to fix the do_xfer > failures we see during resume. > > Err Logs: > arm-scmi firmware:scmi: timed out in resp(caller:do_xfer+0x164/0x568) > cpufreq: cpufreq_online: ->get() failed > > Reported-by: Johan Hovold <johan+linaro@kernel.org> > Closes: https://lore.kernel.org/lkml/ZtgFj1y5ggipgEOS@hovoldconsulting.com/ > Fixes: 0e2a9a03106c ("mailbox: Add support for QTI CPUCP mailbox controller") > Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com> > --- Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Konrad
On Mon, Oct 07, 2024 at 11:36:42AM +0530, Sibi Sankar wrote: > The qcom-cpucp mailbox irq is expected to function during suspend-resume > cycle particularly when the scmi cpufreq driver can query the current > frequency using the get_level message after the cpus are brought up during > resume. Hence mark the irq with IRQF_NO_SUSPEND flag to fix the do_xfer > failures we see during resume. > > Err Logs: > arm-scmi firmware:scmi: timed out in resp(caller:do_xfer+0x164/0x568) > cpufreq: cpufreq_online: ->get() failed > > Reported-by: Johan Hovold <johan+linaro@kernel.org> > Closes: https://lore.kernel.org/lkml/ZtgFj1y5ggipgEOS@hovoldconsulting.com/ > Fixes: 0e2a9a03106c ("mailbox: Add support for QTI CPUCP mailbox controller") > Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com> Seems to work as intended: Tested-by: Johan Hovold <johan+linaro@kernel.org> Johan
diff --git a/drivers/mailbox/qcom-cpucp-mbox.c b/drivers/mailbox/qcom-cpucp-mbox.c index e5437c294803..44f4ed15f818 100644 --- a/drivers/mailbox/qcom-cpucp-mbox.c +++ b/drivers/mailbox/qcom-cpucp-mbox.c @@ -138,7 +138,7 @@ static int qcom_cpucp_mbox_probe(struct platform_device *pdev) return irq; ret = devm_request_irq(dev, irq, qcom_cpucp_mbox_irq_fn, - IRQF_TRIGGER_HIGH, "apss_cpucp_mbox", cpucp); + IRQF_TRIGGER_HIGH | IRQF_NO_SUSPEND, "apss_cpucp_mbox", cpucp); if (ret < 0) return dev_err_probe(dev, ret, "Failed to register irq: %d\n", irq);
The qcom-cpucp mailbox irq is expected to function during suspend-resume cycle particularly when the scmi cpufreq driver can query the current frequency using the get_level message after the cpus are brought up during resume. Hence mark the irq with IRQF_NO_SUSPEND flag to fix the do_xfer failures we see during resume. Err Logs: arm-scmi firmware:scmi: timed out in resp(caller:do_xfer+0x164/0x568) cpufreq: cpufreq_online: ->get() failed Reported-by: Johan Hovold <johan+linaro@kernel.org> Closes: https://lore.kernel.org/lkml/ZtgFj1y5ggipgEOS@hovoldconsulting.com/ Fixes: 0e2a9a03106c ("mailbox: Add support for QTI CPUCP mailbox controller") Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com> --- drivers/mailbox/qcom-cpucp-mbox.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)