]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/amd/display: Wrap dcn32_override_min_req_memclk() in DC_FP_{START, END}
authorXi Ruoyao <xry111@xry111.site>
Fri, 6 Mar 2026 06:28:03 +0000 (14:28 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 25 Mar 2026 10:08:49 +0000 (11:08 +0100)
commit ebe82c6e75cfc547154d0fd843b0dd6cca3d548f upstream.

[Why]
The dcn32_override_min_req_memclk function is in dcn32_fpu.c, which is
compiled with CC_FLAGS_FPU into FP instructions.  So when we call it we
must use DC_FP_{START,END} to save and restore the FP context, and
prepare the FP unit on architectures like LoongArch where the FP unit
isn't always on.

Reported-by: LiarOnce <liaronce@hotmail.com>
Fixes: ee7be8f3de1c ("drm/amd/display: Limit DCN32 8 channel or less parts to DPM1 for FPO")
Signed-off-by: Xi Ruoyao <xry111@xry111.site>
Reviewed-by: Alex Hung <alex.hung@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 25bb1d54ba3983c064361033a8ec15474fece37e)
Cc: stable@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/amd/display/dc/resource/dcn32/dcn32_resource.c

index 62dbb0f3073c0471b81db5666fbd4703253e09eb..ccfdca7c83f66d49b62ecc4a61a1c8de1a389fa7 100644 (file)
@@ -1784,7 +1784,10 @@ 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);
 
+       DC_FP_START();
        dcn32_override_min_req_memclk(dc, context);
+       DC_FP_END();
+
        dcn32_override_min_req_dcfclk(dc, context);
 
        BW_VAL_TRACE_END_WATERMARKS();