diff options
Diffstat (limited to 'common/recipes-kernel/linux/files/0623-drm-amd-dal-Unblanking-logic-change-in-DM-DC.patch')
-rw-r--r-- | common/recipes-kernel/linux/files/0623-drm-amd-dal-Unblanking-logic-change-in-DM-DC.patch | 135 |
1 files changed, 0 insertions, 135 deletions
diff --git a/common/recipes-kernel/linux/files/0623-drm-amd-dal-Unblanking-logic-change-in-DM-DC.patch b/common/recipes-kernel/linux/files/0623-drm-amd-dal-Unblanking-logic-change-in-DM-DC.patch deleted file mode 100644 index d05c9d44..00000000 --- a/common/recipes-kernel/linux/files/0623-drm-amd-dal-Unblanking-logic-change-in-DM-DC.patch +++ /dev/null @@ -1,135 +0,0 @@ -From 56f1ac8be4cdb4f124348e34d9838fc3df9b5ccf Mon Sep 17 00:00:00 2001 -From: Jun Lei <Jun.Lei@amd.com> -Date: Tue, 15 Dec 2015 18:08:17 -0500 -Subject: [PATCH 0623/1110] drm/amd/dal: Unblanking logic change in DM/DC - -DC should unblank and blank displays in commit_surfaces based on *enabled* -surfaces rather than just surface count. - -Signed-off-by: Jun Lei <Jun.Lei@amd.com> -Acked-by: Jordan Lazare <Jordan.Lazare@amd.com> ---- - .../gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_types.c | 2 +- - drivers/gpu/drm/amd/dal/dc/core/dc_target.c | 36 ++++++++++++++-------- - drivers/gpu/drm/amd/dal/dc/dc.h | 2 +- - 3 files changed, 25 insertions(+), 15 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 465d9bf..516d321 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 -@@ -492,7 +492,7 @@ static void fill_plane_attributes_from_fb( - surface->plane_size.grph.surface_pitch = - fb->pitches[0] / (fb->bits_per_pixel / 8); - -- surface->enabled = true; -+ surface->visible = true; - surface->scaling_quality.h_taps_c = 2; - surface->scaling_quality.v_taps_c = 2; - -diff --git a/drivers/gpu/drm/amd/dal/dc/core/dc_target.c b/drivers/gpu/drm/amd/dal/dc/core/dc_target.c -index 9ae98c5..82cdae1 100644 ---- a/drivers/gpu/drm/amd/dal/dc/core/dc_target.c -+++ b/drivers/gpu/drm/amd/dal/dc/core/dc_target.c -@@ -194,36 +194,46 @@ gamma_param_fail: - - bool dc_commit_surfaces_to_target( - struct dc *dc, -- struct dc_surface *surfaces[], -- uint8_t surface_count, -+ struct dc_surface *new_surfaces[], -+ uint8_t new_surface_count, - struct dc_target *dc_target) - - { - uint8_t i, j; - struct core_target *target = DC_TARGET_TO_CORE(dc_target); -- bool need_blanking = (target->status.surface_count == 0); -+ -+ bool current_enabled_surface_count = 0; -+ bool new_enabled_surface_count = 0; -+ -+ for (i = 0; i < target->status.surface_count; i++) -+ if (target->status.surfaces[i]->visible) -+ current_enabled_surface_count++; -+ -+ for (i = 0; i < new_surface_count; i++) -+ if (new_surfaces[i]->visible) -+ new_enabled_surface_count++; - - dal_logger_write(dc->ctx->logger, - LOG_MAJOR_INTERFACE_TRACE, - LOG_MINOR_COMPONENT_DC, - "%s: commit %d surfaces to target 0x%x", - __func__, -- surface_count, -+ new_surface_count, - dc_target); - - - if (!logical_attach_surfaces_to_target( -- surfaces, -- surface_count, -+ new_surfaces, -+ new_surface_count, - dc_target)) { - BREAK_TO_DEBUGGER(); - goto unexpected_fail; - } - -- for (i = 0; i < surface_count; i++) -+ for (i = 0; i < new_surface_count; i++) - for (j = 0; j < target->public.stream_count; j++) - build_scaling_params( -- surfaces[i], -+ new_surfaces[i], - DC_STREAM_TO_CORE(target->public.streams[j])); - - if (dc->hwss.validate_bandwidth(dc, &dc->current_context) != DC_OK) { -@@ -233,11 +243,11 @@ bool dc_commit_surfaces_to_target( - - dc->hwss.program_bw(dc, &dc->current_context); - -- if (need_blanking) -+ if (current_enabled_surface_count > 0 && new_enabled_surface_count == 0) - dc_target_disable_memory_requests(dc_target); - -- for (i = 0; i < surface_count; i++) { -- struct dc_surface *surface = surfaces[i]; -+ for (i = 0; i < new_surface_count; i++) { -+ struct dc_surface *surface = new_surfaces[i]; - struct core_surface *core_surface = DC_SURFACE_TO_CORE(surface); - - dal_logger_write(dc->ctx->logger, -@@ -258,13 +268,13 @@ bool dc_commit_surfaces_to_target( - dc->hwss.update_plane_address(core_surface, target); - } - -- if (surface_count > 0 && need_blanking) -+ if (current_enabled_surface_count == 0 && new_enabled_surface_count > 0) - dc_target_enable_memory_requests(dc_target); - - return true; - - unexpected_fail: -- for (i = 0; i < surface_count; i++) { -+ for (i = 0; i < new_surface_count; i++) { - target->status.surfaces[i] = NULL; - } - target->status.surface_count = 0; -diff --git a/drivers/gpu/drm/amd/dal/dc/dc.h b/drivers/gpu/drm/amd/dal/dc/dc.h -index bbeaf23..264b428 100644 ---- a/drivers/gpu/drm/amd/dal/dc/dc.h -+++ b/drivers/gpu/drm/amd/dal/dc/dc.h -@@ -58,7 +58,7 @@ void dc_destroy(struct dc **dc); - ******************************************************************************/ - - struct dc_surface { -- bool enabled; -+ bool visible; - bool flip_immediate; - struct dc_plane_address address; - --- -2.7.4 - |