drm/amd/display: System black screen hangs on driver load
authorAric Cyr <aric.cyr@amd.com>
Tue, 2 Mar 2021 21:33:12 +0000 (16:33 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 24 Mar 2021 03:31:49 +0000 (23:31 -0400)
This reverts commit dbc43d5fdf48e4e558338fcaef8c9d19521d1c2e
as it causes crash on driver load in some scenarios.

Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Aric Cyr <aric.cyr@amd.com>
Reviewed-by: Martin Leung <Martin.Leung@amd.com>
Acked-by: Solomon Chiu <solomon.chiu@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/clk_mgr/dcn21/rn_clk_mgr.c
drivers/gpu/drm/amd/display/dc/dc.h

index 3946d12e9fb10599beaba9900a7253a07c5114ff..01b1853b7750dfb05fcdb1cb733d8b33b3f7529e 100644 (file)
@@ -761,43 +761,6 @@ static struct wm_table ddr4_wm_table_rn = {
        }
 };
 
-static struct wm_table ddr4_1R_wm_table_rn = {
-       .entries = {
-               {
-                       .wm_inst = WM_A,
-                       .wm_type = WM_TYPE_PSTATE_CHG,
-                       .pstate_latency_us = 11.72,
-                       .sr_exit_time_us = 13.90,
-                       .sr_enter_plus_exit_time_us = 14.80,
-                       .valid = true,
-               },
-               {
-                       .wm_inst = WM_B,
-                       .wm_type = WM_TYPE_PSTATE_CHG,
-                       .pstate_latency_us = 11.72,
-                       .sr_exit_time_us = 13.90,
-                       .sr_enter_plus_exit_time_us = 14.80,
-                       .valid = true,
-               },
-               {
-                       .wm_inst = WM_C,
-                       .wm_type = WM_TYPE_PSTATE_CHG,
-                       .pstate_latency_us = 11.72,
-                       .sr_exit_time_us = 13.90,
-                       .sr_enter_plus_exit_time_us = 14.80,
-                       .valid = true,
-               },
-               {
-                       .wm_inst = WM_D,
-                       .wm_type = WM_TYPE_PSTATE_CHG,
-                       .pstate_latency_us = 11.72,
-                       .sr_exit_time_us = 13.90,
-                       .sr_enter_plus_exit_time_us = 14.80,
-                       .valid = true,
-               },
-       }
-};
-
 static struct wm_table lpddr4_wm_table_rn = {
        .entries = {
                {
@@ -969,12 +932,8 @@ void rn_clk_mgr_construct(
                } else {
                        if (is_green_sardine)
                                rn_bw_params.wm_table = ddr4_wm_table_gs;
-                       else {
-                               if (ctx->dc->config.is_single_rank_dimm)
-                                       rn_bw_params.wm_table = ddr4_1R_wm_table_rn;
-                               else
-                                       rn_bw_params.wm_table = ddr4_wm_table_rn;
-                       }
+                       else
+                               rn_bw_params.wm_table = ddr4_wm_table_rn;
                }
                /* Saved clocks configured at boot for debug purposes */
                rn_dump_clk_registers(&clk_mgr->base.boot_snapshot, &clk_mgr->base, &log_info);
@@ -992,9 +951,6 @@ void rn_clk_mgr_construct(
                if (status == PP_SMU_RESULT_OK &&
                    ctx->dc_bios && ctx->dc_bios->integrated_info) {
                        rn_clk_mgr_helper_populate_bw_params (clk_mgr->base.bw_params, &clock_table, ctx->dc_bios->integrated_info);
-                       /* treat memory config as single channel if memory is asymmetrics. */
-                       if (ctx->dc->config.is_asymmetric_memory)
-                               clk_mgr->base.bw_params->num_channels = 1;
                }
        }
 
index 153093abafbda2d66d534e19fe9297b6aceea9ee..2088508dac1ad4cd1b6bb7627808bbfe31495f5d 100644 (file)
@@ -307,8 +307,6 @@ struct dc_config {
 #endif
        uint64_t vblank_alignment_dto_params;
        uint8_t  vblank_alignment_max_frame_time_diff;
-       bool is_asymmetric_memory;
-       bool is_single_rank_dimm;
 };
 
 enum visual_confirm {