summaryrefslogtreecommitdiffstats
path: root/drivers/bus/mhi/core/main.c
diff options
context:
space:
mode:
authorBhaumik Bhatt <bbhatt@codeaurora.org>2020-11-09 12:47:23 -0800
committerManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>2020-11-18 15:20:34 +0530
commit3fb81a4d5f2f55b1596cb5cffca98c97ca43f07a (patch)
tree0b995f0acd41acd66a9f3fd1465f7af482fa943a /drivers/bus/mhi/core/main.c
parent8e0559921f9afc01fe0457c5e136ce4a7ae8f0d3 (diff)
downloadlinux-stable-3fb81a4d5f2f55b1596cb5cffca98c97ca43f07a.tar.gz
linux-stable-3fb81a4d5f2f55b1596cb5cffca98c97ca43f07a.tar.bz2
linux-stable-3fb81a4d5f2f55b1596cb5cffca98c97ca43f07a.zip
bus: mhi: core: Move to SYS_ERROR regardless of RDDM capability
In some cases, the entry of device to RDDM execution environment can occur after a significant amount of time has elapsed and a SYS_ERROR state change event has already arrived. This can result in scenarios where MHI controller and client drivers are unaware of the error state of the device. Remove the check for rddm_image when processing the SYS_ERROR state change as it is present in mhi_pm_sys_err_handler() already and prevent further activity until the expected RDDM execution environment change occurs or the controller driver decides further action. Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org> Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Diffstat (limited to 'drivers/bus/mhi/core/main.c')
-rw-r--r--drivers/bus/mhi/core/main.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/drivers/bus/mhi/core/main.c b/drivers/bus/mhi/core/main.c
index f953e2a6d58a..91f8b8d05a62 100644
--- a/drivers/bus/mhi/core/main.c
+++ b/drivers/bus/mhi/core/main.c
@@ -737,11 +737,6 @@ int mhi_process_ctrl_ev_ring(struct mhi_controller *mhi_cntrl,
{
enum mhi_pm_state new_state;
- /* skip SYS_ERROR handling if RDDM supported */
- if (mhi_cntrl->ee == MHI_EE_RDDM ||
- mhi_cntrl->rddm_image)
- break;
-
dev_dbg(dev, "System error detected\n");
write_lock_irq(&mhi_cntrl->pm_lock);
new_state = mhi_tryset_pm_state(mhi_cntrl,