drm/amd/display: Don't set dram clock change requirement for SubVP
authorAlvin Lee <Alvin.Lee2@amd.com>
Thu, 16 Jun 2022 14:58:08 +0000 (10:58 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 5 Jul 2022 20:12:59 +0000 (16:12 -0400)
[Description]
In general cases we want to keep the dram clock change requirement (we
prefer configs that support MCLK switch). Only override to false for
SubVP.

Reviewed-by: Jun Lei <Jun.Lei@amd.com>
Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Signed-off-by: Alvin Lee <Alvin.Lee2@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dml/display_mode_structs.h
drivers/gpu/drm/amd/display/dc/dml/display_mode_vba.c

index b5d7e251ed8121cbb870f740e1aa036827a16768..87c9b9f9976e5defe02cd58956c10b97060afbd0 100644 (file)
@@ -184,6 +184,7 @@ struct _vcs_dpi_soc_bounding_box_st {
        double max_avg_fabric_bw_use_normal_percent;
        double max_avg_dram_bw_use_normal_strobe_percent;
        enum dm_prefetch_modes allow_for_pstate_or_stutter_in_vblank_final;
+       bool dram_clock_change_requirement_final;
        double writeback_latency_us;
        double ideal_dram_bw_after_urgent_percent;
        double pct_ideal_dram_sdp_bw_after_urgent_pixel_only; // PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyPixelDataOnly
index 5185c2ccdfd574a83ec94b17a3375c015168b21c..95edca4c085b270de2ccc2247dedddb2d9d373f1 100644 (file)
@@ -343,7 +343,7 @@ static void fetch_socbb_params(struct display_mode_lib *mode_lib)
        mode_lib->vba.MaxAveragePercentOfIdealDRAMBWDisplayCanUseInNormalSystemOperationSTROBE =
                        soc->max_avg_dram_bw_use_normal_strobe_percent;
 
-       mode_lib->vba.DRAMClockChangeRequirementFinal = 1;
+       mode_lib->vba.DRAMClockChangeRequirementFinal = soc->dram_clock_change_requirement_final;
        mode_lib->vba.FCLKChangeRequirementFinal = 1;
        mode_lib->vba.USRRetrainingRequiredFinal = 1;
        mode_lib->vba.ConfigurableDETSizeEnFinal = 0;