drm/amd/display: revert change causing DTN hang for RV
authorSamson Tam <Samson.Tam@amd.com>
Thu, 31 Oct 2019 19:27:28 +0000 (15:27 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 19 Nov 2019 15:12:52 +0000 (10:12 -0500)
[Why]
Hanging on RV for DTN driver verifier

[How]
Roll back change and investigate further

Signed-off-by: Samson Tam <Samson.Tam@amd.com>
Reviewed-by: Jun Lei <Jun.Lei@amd.com>
Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc.c

index c3a315f..7f796a4 100644 (file)
@@ -1747,37 +1747,12 @@ static struct dc_stream_status *stream_get_status(
 
 static const enum surface_update_type update_surface_trace_level = UPDATE_TYPE_FULL;
 
-static void validate_dcc_with_meta_address(
-       struct dc_plane_dcc_param *dcc,
-       struct dc_plane_address *address)
-{
-       if ((address->grph.meta_addr.quad_part == 0) &&
-               dcc->enable) {
-               ASSERT(!dcc->enable);
-               dcc->enable = false;
-       } else if ((address->grph.meta_addr.quad_part != 0) &&
-               !dcc->enable)
-               dcc->enable = true;
-
-       if (address->type != PLN_ADDR_TYPE_GRAPHICS) {
-               if ((address->grph_stereo.right_meta_addr.quad_part == 0) &&
-                       dcc->enable) {
-                       ASSERT(!dcc->enable);
-                       dcc->enable = false;
-               } else if ((address->grph_stereo.right_meta_addr.quad_part != 0) &&
-                       !dcc->enable)
-                       dcc->enable = true;
-       }
-}
-
 static void copy_surface_update_to_plane(
                struct dc_plane_state *surface,
                struct dc_surface_update *srf_update)
 {
        if (srf_update->flip_addr) {
                surface->address = srf_update->flip_addr->address;
-               validate_dcc_with_meta_address(&surface->dcc, &surface->address);
-
                surface->flip_immediate =
                        srf_update->flip_addr->flip_immediate;
                surface->time.time_elapsed_in_us[surface->time.index] =
@@ -1826,8 +1801,6 @@ static void copy_surface_update_to_plane(
                                srf_update->plane_info->global_alpha_value;
                surface->dcc =
                                srf_update->plane_info->dcc;
-               validate_dcc_with_meta_address(&surface->dcc, &surface->address);
-
                surface->sdr_white_level =
                                srf_update->plane_info->sdr_white_level;
                surface->layer_index =