Merge "msm: mdss: avoid requesting ov_lock in esd thread"
This commit is contained in:
commit
5ea7eae65b
1 changed files with 8 additions and 4 deletions
|
@ -123,16 +123,20 @@ void mdss_check_dsi_ctrl_status(struct work_struct *work, uint32_t interval)
|
|||
* to acquire ov_lock in case of video mode. Removing this
|
||||
* lock to fix issues so that ESD thread would not block other
|
||||
* overlay operations. Need refine this lock for command mode
|
||||
*
|
||||
* If Burst mode is enabled then we dont have to acquire ov_lock as
|
||||
* command and data arbitration is possible in h/w
|
||||
*/
|
||||
|
||||
if (mipi->mode == DSI_CMD_MODE)
|
||||
if ((mipi->mode == DSI_CMD_MODE) && !ctrl_pdata->burst_mode_enabled)
|
||||
mutex_lock(&mdp5_data->ov_lock);
|
||||
mutex_lock(&ctl->offlock);
|
||||
|
||||
if (mdss_panel_is_power_off(pstatus_data->mfd->panel_power_state) ||
|
||||
pstatus_data->mfd->shutdown_pending) {
|
||||
mutex_unlock(&ctl->offlock);
|
||||
if (mipi->mode == DSI_CMD_MODE)
|
||||
if ((mipi->mode == DSI_CMD_MODE) &&
|
||||
!ctrl_pdata->burst_mode_enabled)
|
||||
mutex_unlock(&mdp5_data->ov_lock);
|
||||
pr_err("%s: DSI turning off, avoiding panel status check\n",
|
||||
__func__);
|
||||
|
@ -149,7 +153,7 @@ void mdss_check_dsi_ctrl_status(struct work_struct *work, uint32_t interval)
|
|||
* display reset not to be proper. Hence, wait for DMA_P done
|
||||
* for command mode panels before triggering BTA.
|
||||
*/
|
||||
if (ctl->ops.wait_pingpong)
|
||||
if (ctl->ops.wait_pingpong && !ctrl_pdata->burst_mode_enabled)
|
||||
ctl->ops.wait_pingpong(ctl, NULL);
|
||||
|
||||
pr_debug("%s: DSI ctrl wait for ping pong done\n", __func__);
|
||||
|
@ -159,7 +163,7 @@ void mdss_check_dsi_ctrl_status(struct work_struct *work, uint32_t interval)
|
|||
mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF);
|
||||
|
||||
mutex_unlock(&ctl->offlock);
|
||||
if (mipi->mode == DSI_CMD_MODE)
|
||||
if ((mipi->mode == DSI_CMD_MODE) && !ctrl_pdata->burst_mode_enabled)
|
||||
mutex_unlock(&mdp5_data->ov_lock);
|
||||
|
||||
if ((pstatus_data->mfd->panel_power_state == MDSS_PANEL_POWER_ON)) {
|
||||
|
|
Loading…
Add table
Reference in a new issue