FAILED: Patch "drm/amd/display: Override min required DCFCLK in dml1_validate" failed to apply to 5.10-stable tree
Sasha Levin
maintainerThe patch below does not apply to the 5.10-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
Thanks,
Sasha
------------------ original commit in Linus's tree ------------------
From 26fbcb3da77efc77bd7327b7916338d773cca484 Mon Sep 17 00:00:00 2001
From: Sohaib Nadeem <[email protected]>
Date: Wed, 14 Feb 2024 13:51:16 -0500
Subject: [PATCH] drm/amd/display: Override min required DCFCLK in
dml1_validate
[WHY]:
Increasing min DCFCLK addresses underflow issues that occur when phantom pipe is turned on for some Sub-Viewport configs
[HOW]:dcn32_override_min_req_dcfclk is added to override DCFCLK value in dml1_validate when subviewport is being used.
--- .../gpu/drm/amd/display/dc/dcn32/dcn32_resource_helpers.c | 6 ++++++ .../gpu/drm/amd/display/dc/resource/dcn32/dcn32_resource.c | 1 + .../gpu/drm/amd/display/dc/resource/dcn32/dcn32_resource.h | 3 +++ 3 files changed, 10 insertions(+)
drivers/gpu/drm/amd/display/dc/dcn32/dcn32_resource_helpers.c +6 -0
@@ -782,3 +782,9 @@ void dcn32_update_dml_pipes_odm_policy_based_on_context(struct dc *dc, struct dc pipe_cnt++; } } + +void dcn32_override_min_req_dcfclk (struct dc *dc,struct dc_state *context) +{ +if (dcn32_subvp_in_use (dc, context) && context->bw_ctx.bw.dcn.clk.dcfclk_khz <=MIN_SUBVP_DCFCLK_KHZ ) + context->bw_ctx.bw.dcn.clk.dcfclk_khz =MIN_SUBVP_DCFCLK_KHZ ; +}
drivers/gpu/drm/amd/display/dc/resource/dcn32/dcn32_resource.c +1 -0
@@ -1771,6 +1771,7 @@ static bool dml1_validate(struct dc *dc, struct dc_state *context, bool fast_val dc->res_pool->funcs->calculate_wm_and_dlg (dc, context, pipes, pipe_cnt, vlevel);dcn32_override_min_req_memclk (dc, context); +dcn32_override_min_req_dcfclk (dc, context);BW_VAL_TRACE_END_WATERMARKS ();
drivers/gpu/drm/amd/display/dc/resource/dcn32/dcn32_resource.h +3 -0
@@ -42,6 +42,7 @@#define SUBVP_ACTIVE_MARGIN_LIST_LEN 2#define DCN3_2_MAX_SUBVP_PIXEL_RATE_MHZ 1800#define DCN3_2_VMIN_DISPCLK_HZ 717000000 +#define MIN_SUBVP_DCFCLK_KHZ 400000#define TO_DCN32_RES_POOL (pool)\ container_of(pool, struct dcn32_resource_pool, base)
@@ -181,6 +182,8 @@ bool dcn32_subvp_vblank_admissable(struct dc *dc, struct dc_state *context, intvoid dcn32_update_dml_pipes_odm_policy_based_on_context (struct dc *dc,struct dc_state *context,display_e2e_pipe_params_st *pipes); +void dcn32_override_min_req_dcfclk (struct dc *dc,struct dc_state *context); +/* definitions for run time init of reg offsets */ /* CLK SRC */
Signature · 1 line
2.43.0