]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
Revert "drm/amd/display: disable SubVP + DRR to prevent underflow"
authorAurabindo Pillai <aurabindo.pillai@amd.com>
Tue, 21 Mar 2023 14:25:04 +0000 (10:25 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 23 Aug 2023 15:32:24 +0000 (17:32 +0200)
[ Upstream commit f38129bb081758176dd78304faaee95007fb8838 ]

This reverts commit 80c6d6804f31451848a3956a70c2bcb1f07cfcb0.
The orignal commit was intended as a workaround to prevent underflow and
flickering when using one normal monitor and the other high refresh rate
monitor (> 120Hz).

This patch is being reverted in favour of a software solution to enable
SubVP+DRR

Signed-off-by: Aurabindo Pillai <aurabindo.pillai@amd.com>
Reviewed-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c
drivers/gpu/drm/amd/include/amd_shared.h

index bdce36754436821537d8a6163107e8ead7093d4b..4dd9a85f5c724dbe095425dda5467fcf14bebadc 100644 (file)
@@ -1653,11 +1653,6 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
        if (amdgpu_dc_feature_mask & DC_DISABLE_LTTPR_DP2_0)
                init_data.flags.allow_lttpr_non_transparent_mode.bits.DP2_0 = true;
 
-       /* Disable SubVP + DRR config by default */
-       init_data.flags.disable_subvp_drr = true;
-       if (amdgpu_dc_feature_mask & DC_ENABLE_SUBVP_DRR)
-               init_data.flags.disable_subvp_drr = false;
-
        init_data.flags.seamless_boot_edp_requested = false;
 
        if (check_seamless_boot_capability(adev)) {
index d8b4119820bfc7bafb53622cfbea0124c899dd9a..1bfda6e2b3070d667631d34f2abb40344cd1c49d 100644 (file)
@@ -880,10 +880,6 @@ static bool subvp_drr_schedulable(struct dc *dc, struct dc_state *context, struc
        int16_t stretched_drr_us = 0;
        int16_t drr_stretched_vblank_us = 0;
        int16_t max_vblank_mallregion = 0;
-       const struct dc_config *config = &dc->config;
-
-       if (config->disable_subvp_drr)
-               return false;
 
        // Find SubVP pipe
        for (i = 0; i < dc->res_pool->pipe_count; i++) {
index e4a22c68517d1dc2be04b452d70ac3b096f5aa86..f175e65b853a001ea1bcc66d8edfd5b726cbc952 100644 (file)
@@ -240,7 +240,6 @@ enum DC_FEATURE_MASK {
        DC_DISABLE_LTTPR_DP2_0 = (1 << 6), //0x40, disabled by default
        DC_PSR_ALLOW_SMU_OPT = (1 << 7), //0x80, disabled by default
        DC_PSR_ALLOW_MULTI_DISP_OPT = (1 << 8), //0x100, disabled by default
-       DC_ENABLE_SUBVP_DRR = (1 << 9), // 0x200, disabled by default
 };
 
 enum DC_DEBUG_MASK {