slimbus: qcom-ngd-ctrl: Mark capability_timeout to false during timeout
In High stress test case scenarios, BAM interrupt is getting delayed causing timeouts for slimbus transfers. If TX timeout happens driver treating next BAM callback is for previous delayed IRQ and returns without handle. This is resulting to capability exchange timeouts for next power_on sequence. Fix this by marking capability_timeout to false during power off so that after power_on BAM IRQ's handled properly. Change-Id: Iae1b794010a97ea20ac6bc6d80bcca63ba318ea3 Signed-off-by: Chandana Kishori Chiluveru <quic_cchiluve@quicinc.com>
This commit is contained in:
parent
8a32dea381
commit
3014e29f57
@ -1831,6 +1831,11 @@ static int qcom_slim_ngd_ssr_pdr_notify(struct qcom_slim_ngd_ctrl *ctrl,
|
||||
mutex_lock(&ctrl->suspend_resume_lock);
|
||||
mutex_lock(&ctrl->tx_lock);
|
||||
ctrl->state = QCOM_SLIM_NGD_CTRL_SSR_GOING_DOWN;
|
||||
/*
|
||||
* Mark capability_timeout to false here to handle
|
||||
* BAM IRQ's from clean state.
|
||||
*/
|
||||
ctrl->capability_timeout = false;
|
||||
SLIM_INFO(ctrl, "SLIM SSR going down\n");
|
||||
pm_runtime_get_noresume(ctrl->ctrl.dev);
|
||||
SLIM_INFO(ctrl, "SLIM %s: PM get_no_resume count:%d\n",
|
||||
|
Loading…
Reference in New Issue
Block a user