Browse Source

soc: remove reslock usage during wakeup vote/unvote

Remove reslock usage from device wakeup vote and unvote functions.
Mutex lock 'reslock' is to used only within runtime resume
and suspend functions, to avoid race conditions between them.

Change-Id: I221b00db2e762a0803b898a62cd98db1fe3ae3fa
Signed-off-by: Vignesh Kulothungan <[email protected]>
Vignesh Kulothungan 5 năm trước cách đây
mục cha
commit
6142448043
1 tập tin đã thay đổi với 0 bổ sung4 xóa
  1. 0 4
      soc/swr-mstr-ctrl.c

+ 0 - 4
soc/swr-mstr-ctrl.c

@@ -2204,14 +2204,12 @@ static void swrm_device_wakeup_vote(struct swr_master *mstr)
 		dev_err(swrm->dev, "%s Failed to hold suspend\n", __func__);
 		dev_err(swrm->dev, "%s Failed to hold suspend\n", __func__);
 		return;
 		return;
 	}
 	}
-	mutex_lock(&swrm->reslock);
 	if (swrm_request_hw_vote(swrm, LPASS_HW_CORE, true))
 	if (swrm_request_hw_vote(swrm, LPASS_HW_CORE, true))
 		dev_err(swrm->dev, "%s:lpass core hw enable failed\n",
 		dev_err(swrm->dev, "%s:lpass core hw enable failed\n",
 			__func__);
 			__func__);
 	if (swrm_request_hw_vote(swrm, LPASS_AUDIO_CORE, true))
 	if (swrm_request_hw_vote(swrm, LPASS_AUDIO_CORE, true))
 		dev_err(swrm->dev, "%s:lpass audio hw enable failed\n",
 		dev_err(swrm->dev, "%s:lpass audio hw enable failed\n",
 			__func__);
 			__func__);
-	mutex_unlock(&swrm->reslock);
 
 
 	pm_runtime_get_sync(swrm->dev);
 	pm_runtime_get_sync(swrm->dev);
 }
 }
@@ -2228,10 +2226,8 @@ static void swrm_device_wakeup_unvote(struct swr_master *mstr)
 	pm_runtime_mark_last_busy(swrm->dev);
 	pm_runtime_mark_last_busy(swrm->dev);
 	pm_runtime_put_autosuspend(swrm->dev);
 	pm_runtime_put_autosuspend(swrm->dev);
 
 
-	mutex_lock(&swrm->reslock);
 	swrm_request_hw_vote(swrm, LPASS_AUDIO_CORE, false);
 	swrm_request_hw_vote(swrm, LPASS_AUDIO_CORE, false);
 	swrm_request_hw_vote(swrm, LPASS_HW_CORE, false);
 	swrm_request_hw_vote(swrm, LPASS_HW_CORE, false);
-	mutex_unlock(&swrm->reslock);
 
 
 	swrm_unlock_sleep(swrm);
 	swrm_unlock_sleep(swrm);
 }
 }