Merge "disp: msm: dp: check for atomic phase"
This commit is contained in:
committed by
Gerrit - the friendly Code Review server
commit
5215f2a6dd
@@ -1165,6 +1165,7 @@ static int dp_mst_connector_atomic_check(struct drm_connector *connector,
|
|||||||
void *display, struct drm_atomic_state *state)
|
void *display, struct drm_atomic_state *state)
|
||||||
{
|
{
|
||||||
int rc = 0, slots, i;
|
int rc = 0, slots, i;
|
||||||
|
bool vcpi_released = false;
|
||||||
struct drm_connector_state *old_conn_state;
|
struct drm_connector_state *old_conn_state;
|
||||||
struct drm_connector_state *new_conn_state;
|
struct drm_connector_state *new_conn_state;
|
||||||
struct drm_crtc *old_crtc;
|
struct drm_crtc *old_crtc;
|
||||||
@@ -1239,6 +1240,7 @@ static int dp_mst_connector_atomic_check(struct drm_connector *connector,
|
|||||||
slots, rc);
|
slots, rc);
|
||||||
goto end;
|
goto end;
|
||||||
}
|
}
|
||||||
|
vcpi_released = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bridge_state->num_slots = 0;
|
bridge_state->num_slots = 0;
|
||||||
@@ -1284,6 +1286,15 @@ mode_set:
|
|||||||
goto end;
|
goto end;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* check if vcpi slots are trying to get allocated in same phase
|
||||||
|
* as deallocation. If so, go to end to avoid allocation.
|
||||||
|
*/
|
||||||
|
if (vcpi_released) {
|
||||||
|
DP_WARN("skipping allocation since vcpi was released in the same state \n");
|
||||||
|
goto end;
|
||||||
|
}
|
||||||
|
|
||||||
if (WARN_ON(bridge_state->num_slots)) {
|
if (WARN_ON(bridge_state->num_slots)) {
|
||||||
rc = -EINVAL;
|
rc = -EINVAL;
|
||||||
goto end;
|
goto end;
|
||||||
|
|||||||
Reference in New Issue
Block a user