From dad34658b49f35a190ecf1212d8a1fb1971d15f9 Mon Sep 17 00:00:00 2001 From: Mykola Lysenko Date: Fri, 18 Dec 2015 18:46:32 +0800 Subject: [PATCH 1216/1565] drm/amd/dal: remove mst semaphore After fix applied to userspace we do not need to defer connectors destruction and so can remove mst semaphore usage Change-Id: Ib0758d9296cd1cf398bff4b7640c5944d49de02b Signed-off-by: Mykola Lysenko Signed-off-by: Harry Wentland Acked-by: Harry Wentland --- .../drm/amd/dal/amdgpu_dm/amdgpu_dm_mst_types.c | 3 --- .../gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_types.c | 23 ---------------------- 2 files changed, 26 deletions(-) diff --git a/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_mst_types.c b/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_mst_types.c index cd9a36c..bfa3c4e2 100644 --- a/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_mst_types.c +++ b/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_mst_types.c @@ -332,9 +332,6 @@ static void dm_dp_destroy_mst_connector( struct drm_device *dev = master->base.dev; struct amdgpu_device *adev = dev->dev_private; - /* wait until reset mode occur */ - down(&aconnector->mst_sem); - drm_connector_unregister(connector); /* need to nuke the connector */ drm_modeset_lock_all(dev); 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 eb79129..78107ca 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 @@ -1804,8 +1804,6 @@ void amdgpu_dm_connector_init_helper( drm_object_attach_property(&aconnector->base.base, adev->mode_info.underscan_vborder_property, 0); - - sema_init(&aconnector->mst_sem, 1); } /* Note: this function assumes that dc_link_detect() was called for the @@ -2073,25 +2071,6 @@ static void handle_headless_hotplug( } } -static void update_connector_sem_state(struct drm_atomic_state *state) -{ - struct drm_connector *connector; - struct drm_connector_state *old_con_state; - struct amdgpu_connector *aconnector = NULL; - int i; - - for_each_connector_in_state(state, connector, old_con_state, i) { - aconnector = to_amdgpu_connector(connector); - if (old_con_state->crtc) { - if (!connector->state->crtc) - up(&aconnector->mst_sem); - } else { - if (connector->state->crtc) - down(&aconnector->mst_sem); - } - } -} - int amdgpu_dm_atomic_commit( struct drm_device *dev, struct drm_atomic_state *state, @@ -2250,8 +2229,6 @@ int amdgpu_dm_atomic_commit( /* DC is optimized not to do anything if 'targets' didn't change. */ dc_commit_targets(dm->dc, commit_targets, commit_targets_count); - update_connector_sem_state(state); - /* update planes when needed */ for_each_plane_in_state(state, plane, old_plane_state, i) { struct drm_plane_state *plane_state = plane->state; -- 1.9.1