Manivannan Sadhasivam manivannan.sadhasivam@linaro.org writes:
From: Loic Poulain loic.poulain@linaro.org
For whatever reason, some devices like QCA6390, WCN6855 using ath11k are not in M3 state during PM resume, but still functional. The mhi_pm_resume should then not fail in those cases, and let the higher level device specific stack continue resuming process.
Add an API mhi_pm_resume_force(), to force resuming irrespective of the current MHI state. This fixes a regression with non functional ath11k WiFi after suspend/resume cycle on some machines.
Bug report: https://bugzilla.kernel.org/show_bug.cgi?id=214179
Fixes: 020d3b26c07a ("bus: mhi: Early MHI resume failure in non M3 state") Cc: stable@vger.kernel.org #5.13 Link: https://lore.kernel.org/regressions/871r5p0x2u.fsf@codeaurora.org/ Reported-by: Kalle Valo kvalo@codeaurora.org Reported-by: Pengyu Ma mapengyu@gmail.com Signed-off-by: Loic Poulain loic.poulain@linaro.org [mani: Switched to API, added bug report, reported-by tags and CCed stable] Signed-off-by: Manivannan Sadhasivam manivannan.sadhasivam@linaro.org
Changes in v2:
- Switched to a new API "mhi_pm_resume_force()" instead of the "force" flag as suggested by Greg. The "force" flag is now used inside the API.
Greg: I'm sending this patch directly to you so that you can apply it to char-misc once we get an ACK from Kalle.
Thanks! I now tested this patch on top v5.16-rc4 using QCA6390 and firmware WLAN.HST.1.0.1-01740-QCAHSTSWPLZ_V2_TO_X86-1, no issues found:
Tested-by: Kalle Valo kvalo@kernel.org
I'm not expecting any conflicts with ath11k, so please take this via Greg's tree. It would be really good to get this regression fixed in v5.16, so is it possible to send this to -rc releases?
For the ath11k part:
Acked-by: Kalle Valo kvalo@kernel.org