aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0609-drm-amd-dal-split-selection-of-connector-in-commit.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0609-drm-amd-dal-split-selection-of-connector-in-commit.patch')
-rw-r--r--common/recipes-kernel/linux/files/0609-drm-amd-dal-split-selection-of-connector-in-commit.patch131
1 files changed, 0 insertions, 131 deletions
diff --git a/common/recipes-kernel/linux/files/0609-drm-amd-dal-split-selection-of-connector-in-commit.patch b/common/recipes-kernel/linux/files/0609-drm-amd-dal-split-selection-of-connector-in-commit.patch
deleted file mode 100644
index 7e7dbd26..00000000
--- a/common/recipes-kernel/linux/files/0609-drm-amd-dal-split-selection-of-connector-in-commit.patch
+++ /dev/null
@@ -1,131 +0,0 @@
-From c9ba7980b34bcfd93743b190c00ea8903122d198 Mon Sep 17 00:00:00 2001
-From: Mykola Lysenko <Mykola.Lysenko@amd.com>
-Date: Thu, 10 Dec 2015 20:20:48 +0800
-Subject: [PATCH 0609/1110] drm/amd/dal: split selection of connector in commit
-
-During commit there could be situation when there are two connectors
-in state. For SET mode action new connector should be used.
-For RESET mode action old connector should be used.
-
-In old code there was a situation when OLD connector sink
-used for SET mode.
-
-Also it uses new and old connector to update MST semaphore properly
-
-Signed-off-by: Harry Wentland <harry.wentland@amd.com>
-Acked-by: Harry Wentland<harry.wentland@amd.com>
----
- .../gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_types.c | 45 +++++++++++++---------
- 1 file changed, 26 insertions(+), 19 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_types.c b/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_types.c
-index a9ff09d..633f0de 100644
---- a/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_types.c
-+++ b/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_types.c
-@@ -2118,7 +2118,8 @@ int amdgpu_dm_atomic_commit(
- /* update changed items */
- for_each_crtc_in_state(state, crtc, old_crtc_state, i) {
- struct amdgpu_crtc *acrtc;
-- struct amdgpu_connector *aconnector = NULL;
-+ struct amdgpu_connector *aconnector_new = NULL;
-+ struct amdgpu_connector *aconnector_old = NULL;
- enum dm_commit_action action;
- struct drm_crtc_state *new_state = crtc->state;
- struct drm_connector *connector;
-@@ -2126,20 +2127,30 @@ int amdgpu_dm_atomic_commit(
-
- acrtc = to_amdgpu_crtc(crtc);
-
-- for_each_connector_in_state(state,
-- connector, old_con_state, j) {
-+ for_each_connector_in_state(
-+ state,
-+ connector,
-+ old_con_state,
-+ j) {
- if (connector->state->crtc == crtc) {
-- aconnector = to_amdgpu_connector(connector);
-+ aconnector_new = to_amdgpu_connector(connector);
- break;
- }
-+ }
-
-+ for_each_connector_in_state(
-+ state,
-+ connector,
-+ old_con_state,
-+ j) {
- /*
-- * this is the case when reset occur, connector is
-- * removed from new crtc state. We need to update
-- * connector state anyway. Access it from old_con_state
-+ * this is the case when reset occur, connector
-+ * is removed from new crtc state. We need to
-+ * update connector state anyway. Access it from
-+ * old_con_state
- */
- if (old_con_state->crtc == crtc) {
-- aconnector = to_amdgpu_connector(connector);
-+ aconnector_old = to_amdgpu_connector(connector);
- break;
- }
- }
-@@ -2147,24 +2158,20 @@ int amdgpu_dm_atomic_commit(
- /* handles headless hotplug case, updating new_state and
- * aconnector as needed
- */
-- handle_headless_hotplug(acrtc, new_state, &aconnector);
-+ handle_headless_hotplug(acrtc, new_state, &aconnector_new);
-
- action = get_dm_commit_action(new_state);
-
-- if (!aconnector && action != DM_COMMIT_ACTION_NOTHING) {
-- DRM_ERROR("Can't find connector for crtc %d\n",
-- acrtc->crtc_id);
-- break;
-- }
--
- switch (action) {
- case DM_COMMIT_ACTION_DPMS_ON:
- case DM_COMMIT_ACTION_SET: {
- struct dc_target *new_target =
- create_target_for_sink(
-- aconnector,
-+ aconnector_new,
- &crtc->state->mode);
-+
- DRM_DEBUG_KMS("Atomic commit: SET.\n");
-+
- if (!new_target) {
- /*
- * this could happen because of issues with
-@@ -2190,7 +2197,7 @@ int amdgpu_dm_atomic_commit(
- /* this is the update mode case */
- dc_target_release(acrtc->target);
- acrtc->target = NULL;
-- up(&aconnector->mst_sem);
-+ up(&aconnector_old->mst_sem);
- }
-
- /*
-@@ -2204,7 +2211,7 @@ int amdgpu_dm_atomic_commit(
- acrtc->target = new_target;
- acrtc->enabled = true;
-
-- down(&aconnector->mst_sem);
-+ down(&aconnector_new->mst_sem);
- break;
- }
-
-@@ -2222,7 +2229,7 @@ int amdgpu_dm_atomic_commit(
- acrtc->target = NULL;
- acrtc->enabled = false;
-
-- up(&aconnector->mst_sem);
-+ up(&aconnector_old->mst_sem);
- }
- break;
- } /* switch() */
---
-2.7.4
-