From: George Shen <george.s...@amd.com>

[ Upstream commit e7f2f4cd67443ce308480ca461806fcc3456e0ba ]

[Why]
The urgent latency override is useful when debugging issues
relating to underflow.

Current overridden variable is not correct and has no effect
on DCN3.2 and DCN3.21 DML calculations.

[How]
For DCN3.2 and DCN3.21, override the correct urgent latency
variable when bounding box override is present.

Reviewed-by: Alvin Lee <alvin.l...@amd.com>
Reviewed-by: Nevenko Stupar <nevenko.stu...@amd.com>
Acked-by: Wayne Lin <wayne....@amd.com>
Signed-off-by: George Shen <george.s...@amd.com>
Tested-by: Daniel Wheeler <daniel.whee...@amd.com>
Signed-off-by: Alex Deucher <alexander.deuc...@amd.com>
Signed-off-by: Sasha Levin <sas...@kernel.org>
---
 drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c   | 1 +
 drivers/gpu/drm/amd/display/dc/dml/dcn321/dcn321_fpu.c | 1 +
 2 files changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c 
b/drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c
index e573e706430d..b9d3a4000c3d 100644
--- a/drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c
+++ b/drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c
@@ -2199,6 +2199,7 @@ void dcn32_update_bw_bounding_box_fpu(struct dc *dc, 
struct clk_bw_params *bw_pa
                if ((int)(dcn3_2_soc.urgent_latency_us * 1000) != 
dc->bb_overrides.urgent_latency_ns
                        && dc->bb_overrides.urgent_latency_ns) {
                        dcn3_2_soc.urgent_latency_us = 
dc->bb_overrides.urgent_latency_ns / 1000.0;
+                       dcn3_2_soc.urgent_latency_pixel_data_only_us = 
dc->bb_overrides.urgent_latency_ns / 1000.0;
                }
 
                if ((int)(dcn3_2_soc.dram_clock_change_latency_us * 1000)
diff --git a/drivers/gpu/drm/amd/display/dc/dml/dcn321/dcn321_fpu.c 
b/drivers/gpu/drm/amd/display/dc/dml/dcn321/dcn321_fpu.c
index c87091683b5d..b6369758b491 100644
--- a/drivers/gpu/drm/amd/display/dc/dml/dcn321/dcn321_fpu.c
+++ b/drivers/gpu/drm/amd/display/dc/dml/dcn321/dcn321_fpu.c
@@ -489,6 +489,7 @@ void dcn321_update_bw_bounding_box_fpu(struct dc *dc, 
struct clk_bw_params *bw_p
                if ((int)(dcn3_21_soc.urgent_latency_us * 1000) != 
dc->bb_overrides.urgent_latency_ns
                        && dc->bb_overrides.urgent_latency_ns) {
                        dcn3_21_soc.urgent_latency_us = 
dc->bb_overrides.urgent_latency_ns / 1000.0;
+                       dcn3_21_soc.urgent_latency_pixel_data_only_us = 
dc->bb_overrides.urgent_latency_ns / 1000.0;
                }
 
                if ((int)(dcn3_21_soc.dram_clock_change_latency_us * 1000)
-- 
2.35.1

Reply via email to