mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-08 04:42:04 -04:00
disp: msm: dp: skip dp disconnect if already in progress
When dp disconnect is triggered, as part of the teardown process, the driver sends a notification to audio driver and waits for the audio driver to complete before proceeding. When back to back disconnects are triggered currently there is no check if a disconnect is already in progress. So the driver ends up reinitializing the signal completion that the previous disconnect thread is waiting on causing this issue. This change adds a check at the beginning of disconnect handling and bail out if a disconnect is already in progress. Change-Id: I2eaee339408d9dbc120f8efc14d86fca0ebb0758 Signed-off-by: Rajkumar Subbiah <rsubbia@codeaurora.org>
This commit is contained in:
parent
e3dc3592ec
commit
2ba9bd9434
1 changed files with 7 additions and 0 deletions
|
|
@ -1335,6 +1335,13 @@ static int dp_display_usbpd_disconnect_cb(struct device *dev)
|
|||
SDE_EVT32_EXTERNAL(SDE_EVTLOG_FUNC_ENTRY, dp->state,
|
||||
dp->debug->psm_enabled);
|
||||
|
||||
/* skip if a disconnect is already in progress */
|
||||
if (dp_display_state_is(DP_STATE_ABORTED)) {
|
||||
DP_DEBUG("disconnect already in progress\n");
|
||||
SDE_EVT32_EXTERNAL(SDE_EVTLOG_FUNC_CASE1, dp->state);
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (dp->debug->psm_enabled && dp_display_state_is(DP_STATE_READY))
|
||||
dp->link->psm_config(dp->link, &dp->panel->link_info, true);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue