mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-09 05:39:54 -04:00
disp: msm: sde: skip RM reserve for primary in cwb on/off usecase
Add changes to skip RM allocation during atomic_check for dsi connectors which can have a seamless transition during CWB usecase. When CWB gets enabled in alternate commits N, N+2 on dsi connectors there is back to back connectors_changed modeset and poll gets enabled for the consecutive commit N+1, N+3 on rsvp_nxt to get cleared. This rsvp_nxt will be cleared on drm_atomic_state_put of commit N, N+2, hence atomic_check of commit N+1, N+3 is blocked until this time causing commit failures. Change-Id: I06f7a8d9dadb42b6d69201afeff099d554edd98e Signed-off-by: Jayaprakash Madisetty <jmadiset@codeaurora.org>
This commit is contained in:
parent
ad61b3f235
commit
ee9b8ca504
1 changed files with 7 additions and 0 deletions
|
|
@ -917,6 +917,12 @@ static int _sde_encoder_atomic_check_reserve(struct drm_encoder *drm_enc,
|
|||
return ret;
|
||||
}
|
||||
|
||||
/* Skip RM allocation for Primary during CWB usecase */
|
||||
if (!crtc_state->mode_changed && !crtc_state->active_changed &&
|
||||
crtc_state->connectors_changed && (conn_state->crtc ==
|
||||
conn_state->connector->state->crtc))
|
||||
goto skip_reserve;
|
||||
|
||||
/* Reserve dynamic resources, indicating atomic_check phase */
|
||||
ret = sde_rm_reserve(&sde_kms->rm, drm_enc, crtc_state,
|
||||
conn_state, true);
|
||||
|
|
@ -927,6 +933,7 @@ static int _sde_encoder_atomic_check_reserve(struct drm_encoder *drm_enc,
|
|||
return ret;
|
||||
}
|
||||
|
||||
skip_reserve:
|
||||
/**
|
||||
* Update connector state with the topology selected for the
|
||||
* resource set validated. Reset the topology if we are
|
||||
|
|
|
|||
Loading…
Reference in a new issue