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

[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>
---
 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 7ff7cd8b5c93..b8d4547a885f 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
@@ -2197,6 +2197,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 7ebf25e87933..dd90f241e906 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.37.3

Reply via email to