summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/display/dc/spl
diff options
context:
space:
mode:
authorSamson Tam <Samson.Tam@amd.com>2024-09-06 03:28:47 -0400
committerAlex Deucher <alexander.deucher@amd.com>2024-10-01 17:29:58 -0400
commit559dc44f04ebd8d54d6493f0cd5e7d3db1fe0bb2 (patch)
treeb7573647febc869239eb05d6c2fc1b3741258c6a /drivers/gpu/drm/amd/display/dc/spl
parent9dad21f910fcea2bdcff4af46159101d7f9cd8ba (diff)
drm/amd/display: disable adaptive scaler and sharpener when integer scaling is enabled
[Why & How] When integer scaling is enabled, set taps to 1 and disable adaptive scaler and sharpener. Reviewed-by: Jun Lei <jun.lei@amd.com> Signed-off-by: Samson Tam <Samson.Tam@amd.com> Signed-off-by: Aurabindo Pillai <aurabindo.pillai@amd.com> Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/spl')
-rw-r--r--drivers/gpu/drm/amd/display/dc/spl/dc_spl.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/spl/dc_spl.c b/drivers/gpu/drm/amd/display/dc/spl/dc_spl.c
index 014e8a296f0c..c38a5c8646e8 100644
--- a/drivers/gpu/drm/amd/display/dc/spl/dc_spl.c
+++ b/drivers/gpu/drm/amd/display/dc/spl/dc_spl.c
@@ -885,6 +885,18 @@ static bool spl_get_optimal_number_of_taps(
spl_scratch->scl_data.viewport.width > max_downscale_src_width)
return false;
+ /* Disable adaptive scaler and sharpener when integer scaling is enabled */
+ if (spl_in->scaling_quality.integer_scaling) {
+ spl_scratch->scl_data.taps.h_taps = 1;
+ spl_scratch->scl_data.taps.v_taps = 1;
+ spl_scratch->scl_data.taps.v_taps_c = 1;
+ spl_scratch->scl_data.taps.h_taps_c = 1;
+ *enable_easf_v = false;
+ *enable_easf_h = false;
+ *enable_isharp = false;
+ return true;
+ }
+
/* Check if we are using EASF or not */
skip_easf = enable_easf(spl_in, spl_scratch);