diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.14.71/0475-drm-amd-display-Get-rid-of-get_dm_commit_action.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.14.71/0475-drm-amd-display-Get-rid-of-get_dm_commit_action.patch | 250 |
1 files changed, 0 insertions, 250 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.14.71/0475-drm-amd-display-Get-rid-of-get_dm_commit_action.patch b/common/recipes-kernel/linux/linux-yocto-4.14.71/0475-drm-amd-display-Get-rid-of-get_dm_commit_action.patch deleted file mode 100644 index f1d2394a..00000000 --- a/common/recipes-kernel/linux/linux-yocto-4.14.71/0475-drm-amd-display-Get-rid-of-get_dm_commit_action.patch +++ /dev/null @@ -1,250 +0,0 @@ -From 6523322e31844b372f76d84128c3f1581f181489 Mon Sep 17 00:00:00 2001 -From: Andrey Grodzovsky <Andrey.Grodzovsky@amd.com> -Date: Wed, 24 May 2017 11:59:39 -0400 -Subject: [PATCH 0475/4131] drm/amd/display: Get rid of get_dm_commit_action - -Use drm_atomic_crtc_needs_modeset instead. - -Signed-off-by: Andrey Grodzovsky <Andrey.Grodzovsky@amd.com> -Reviewed-by: Harry Wentland <Harry.Wentland@amd.com> -Signed-off-by: Alex Deucher <alexander.deucher@amd.com> ---- - .../drm/amd/display/amdgpu_dm/amdgpu_dm_types.c | 127 +++++++-------------- - 1 file changed, 44 insertions(+), 83 deletions(-) - -diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_types.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_types.c -index 3f6a6b8..fbdb599 100644 ---- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_types.c -+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_types.c -@@ -2326,57 +2326,23 @@ int amdgpu_dm_encoder_init( - return res; - } - --enum dm_commit_action { -- DM_COMMIT_ACTION_NOTHING, -- DM_COMMIT_ACTION_RESET, -- DM_COMMIT_ACTION_DPMS_ON, -- DM_COMMIT_ACTION_DPMS_OFF, -- DM_COMMIT_ACTION_SET --}; -- --static enum dm_commit_action get_dm_commit_action(struct drm_crtc_state *state) -+static bool modeset_required(struct drm_crtc_state *crtc_state) - { -- /* mode changed means either actually mode changed or enabled changed */ -- /* active changed means dpms changed */ -- -- DRM_DEBUG_KMS("crtc_state_flags: enable:%d, active:%d, planes_changed:%d, mode_changed:%d,active_changed:%d,connectors_changed:%d\n", -- state->enable, -- state->active, -- state->planes_changed, -- state->mode_changed, -- state->active_changed, -- state->connectors_changed); -- -- if (state->mode_changed) { -- /* if it is got disabled - call reset mode */ -- if (!state->enable) -- return DM_COMMIT_ACTION_RESET; -+ if (!drm_atomic_crtc_needs_modeset(crtc_state)) -+ return false; - -- if (state->active) -- return DM_COMMIT_ACTION_SET; -- else -- return DM_COMMIT_ACTION_RESET; -- } else { -- /* ! mode_changed */ -+ if (!crtc_state->enable) -+ return false; - -- /* if it is remain disable - skip it */ -- if (!state->enable) -- return DM_COMMIT_ACTION_NOTHING; -+ return crtc_state->active; -+} - -- if (state->active && state->connectors_changed) -- return DM_COMMIT_ACTION_SET; -+static bool modereset_required(struct drm_crtc_state *crtc_state) -+{ -+ if (!drm_atomic_crtc_needs_modeset(crtc_state)) -+ return false; - -- if (state->active_changed) { -- if (state->active) { -- return DM_COMMIT_ACTION_DPMS_ON; -- } else { -- return DM_COMMIT_ACTION_DPMS_OFF; -- } -- } else { -- /* ! active_changed */ -- return DM_COMMIT_ACTION_NOTHING; -- } -- } -+ return !crtc_state->enable || !crtc_state->active; - } - - static void manage_dm_interrupts( -@@ -2629,12 +2595,10 @@ void amdgpu_dm_atomic_commit_tail( - struct drm_connector_state *old_conn_state; - - drm_atomic_helper_update_legacy_modeset_state(dev, state); -- - /* update changed items */ - for_each_crtc_in_state(state, crtc, old_crtc_state, i) { - struct amdgpu_crtc *acrtc; - struct amdgpu_connector *aconnector = NULL; -- enum dm_commit_action action; - struct drm_crtc_state *new_state = crtc->state; - - acrtc = to_amdgpu_crtc(crtc); -@@ -2645,15 +2609,23 @@ void amdgpu_dm_atomic_commit_tail( - crtc, - false); - -+ DRM_DEBUG_KMS( -+ "amdgpu_crtc id:%d crtc_state_flags: enable:%d, active:%d, " -+ "planes_changed:%d, mode_changed:%d,active_changed:%d," -+ "connectors_changed:%d\n", -+ acrtc->crtc_id, -+ new_state->enable, -+ new_state->active, -+ new_state->planes_changed, -+ new_state->mode_changed, -+ new_state->active_changed, -+ new_state->connectors_changed); -+ - /* handles headless hotplug case, updating new_state and - * aconnector as needed - */ - -- action = get_dm_commit_action(new_state); -- -- switch (action) { -- case DM_COMMIT_ACTION_DPMS_ON: -- case DM_COMMIT_ACTION_SET: { -+ if (modeset_required(new_state)) { - struct dm_connector_state *dm_state = NULL; - new_stream = NULL; - -@@ -2703,21 +2675,13 @@ void amdgpu_dm_atomic_commit_tail( - acrtc->enabled = true; - acrtc->hw_mode = crtc->state->mode; - crtc->hwmode = crtc->state->mode; -+ } else if (modereset_required(new_state)) { - -- break; -- } -- case DM_COMMIT_ACTION_DPMS_OFF: -- case DM_COMMIT_ACTION_RESET: - DRM_INFO("Atomic commit: RESET. crtc id %d:[%p]\n", acrtc->crtc_id, acrtc); - /* i.e. reset mode */ - if (acrtc->stream) - remove_stream(adev, acrtc); -- break; -- -- /*TODO retire */ -- case DM_COMMIT_ACTION_NOTHING: -- continue; -- } /* switch() */ -+ } - } /* for_each_crtc_in_state() */ - - /* Handle scaling and undersacn changes*/ -@@ -2731,8 +2695,7 @@ void amdgpu_dm_atomic_commit_tail( - const struct dc_stream_status *status = NULL; - - /* Skip any modesets/resets */ -- if (!acrtc || -- get_dm_commit_action(acrtc->base.state) != DM_COMMIT_ACTION_NOTHING) -+ if (!acrtc || drm_atomic_crtc_needs_modeset(acrtc->base.state)) - continue; - - /* Skip any thing not scale or underscan chnages */ -@@ -3128,17 +3091,25 @@ int amdgpu_dm_atomic_check(struct drm_device *dev, - for_each_crtc_in_state(state, crtc, crtc_state, i) { - struct amdgpu_crtc *acrtc = NULL; - struct amdgpu_connector *aconnector = NULL; -- enum dm_commit_action action; - - acrtc = to_amdgpu_crtc(crtc); - - aconnector = amdgpu_dm_find_first_crct_matching_connector(state, crtc, true); - -- action = get_dm_commit_action(crtc_state); -+ DRM_DEBUG_KMS( -+ "amdgpu_crtc id:%d crtc_state_flags: enable:%d, active:%d, " -+ "planes_changed:%d, mode_changed:%d,active_changed:%d," -+ "connectors_changed:%d\n", -+ acrtc->crtc_id, -+ crtc_state->enable, -+ crtc_state->active, -+ crtc_state->planes_changed, -+ crtc_state->mode_changed, -+ crtc_state->active_changed, -+ crtc_state->connectors_changed); -+ -+ if (modeset_required(crtc_state)) { - -- switch (action) { -- case DM_COMMIT_ACTION_DPMS_ON: -- case DM_COMMIT_ACTION_SET: { - struct dc_stream *new_stream = NULL; - struct drm_connector_state *conn_state = NULL; - struct dm_connector_state *dm_state = NULL; -@@ -3176,11 +3147,9 @@ int amdgpu_dm_atomic_check(struct drm_device *dev, - new_stream_count++; - need_to_validate = true; - wait_for_prev_commits = true; -- break; -- } - -- case DM_COMMIT_ACTION_DPMS_OFF: -- case DM_COMMIT_ACTION_RESET: -+ } else if (modereset_required(crtc_state)) { -+ - /* i.e. reset mode */ - if (acrtc->stream) { - set_count = remove_from_val_sets( -@@ -3189,11 +3158,6 @@ int amdgpu_dm_atomic_check(struct drm_device *dev, - acrtc->stream); - wait_for_prev_commits = true; - } -- break; -- -- /*TODO retire */ -- case DM_COMMIT_ACTION_NOTHING: -- continue; - } - - /* -@@ -3221,8 +3185,7 @@ int amdgpu_dm_atomic_check(struct drm_device *dev, - struct dc_stream *new_stream; - - /* Skip any modesets/resets */ -- if (!acrtc || -- get_dm_commit_action(acrtc->base.state) != DM_COMMIT_ACTION_NOTHING) -+ if (!acrtc || drm_atomic_crtc_needs_modeset(acrtc->base.state)) - continue; - - /* Skip any thing not scale or underscan chnages */ -@@ -3260,7 +3223,6 @@ int amdgpu_dm_atomic_check(struct drm_device *dev, - struct drm_framebuffer *fb = plane_state->fb; - struct drm_connector *connector; - struct dm_connector_state *dm_state = NULL; -- enum dm_commit_action action; - struct drm_crtc_state *crtc_state; - bool pflip_needed; - -@@ -3269,7 +3231,6 @@ int amdgpu_dm_atomic_check(struct drm_device *dev, - !crtc->state->planes_changed || !crtc->state->active) - continue; - -- action = get_dm_commit_action(crtc->state); - - crtc_state = drm_atomic_get_crtc_state(state, crtc); - pflip_needed = !state->allow_modeset; --- -2.7.4 - |