linux/drivers/bus/mhi/core
Loic Poulain cab2d3fd68 bus: mhi: core: Add support for forced PM resume
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

Link: https://lore.kernel.org/regressions/871r5p0x2u.fsf@codeaurora.org/
Fixes: 020d3b26c0 ("bus: mhi: Early MHI resume failure in non M3 state")
Cc: stable@vger.kernel.org #5.13
Reported-by: Kalle Valo <kvalo@codeaurora.org>
Reported-by: Pengyu Ma <mapengyu@gmail.com>
Tested-by: Kalle Valo <kvalo@kernel.org>
Acked-by: Kalle Valo <kvalo@kernel.org>
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>
Link: https://lore.kernel.org/r/20211209131633.4168-1-manivannan.sadhasivam@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-09 18:47:05 +01:00
..
boot.c bus: mhi: core: Replace DMA allocation wrappers with original APIs 2021-08-05 14:28:47 +02:00
debugfs.c bus: mhi: core: Rename debugfs directory name 2021-03-10 20:11:22 +05:30
init.c bus: mhi: core: Replace DMA allocation wrappers with original APIs 2021-08-05 14:28:47 +02:00
internal.h Revert "bus: mhi: Add inbound buffers allocation flag" 2021-08-27 21:24:09 +02:00
main.c Revert "bus: mhi: Add inbound buffers allocation flag" 2021-08-27 21:24:09 +02:00
Makefile bus: mhi: core: Fix the building of MHI module 2020-10-02 11:33:47 +02:00
pm.c bus: mhi: core: Add support for forced PM resume 2021-12-09 18:47:05 +01:00