From: Alex Hung Date: Fri, 15 May 2026 22:30:45 +0000 (-0600) Subject: drm/amd/display: Clean up PSR helper functions X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9aef3d167a1c0f1a59ef043ee7b0f525936fbfc6;p=thirdparty%2Flinux.git drm/amd/display: Clean up PSR helper functions [Why & How] Use the existing local dc variable in amdgpu_dm_set_psr_caps() instead of redundantly dereferencing link->ctx->dc. Simplify amdgpu_dm_psr_is_active_allowed() by replacing with early return and inlining the intermediate stream variable. No functional changes. Assisted-by: Copilot:Claude-Sonnet-4.6 Reviewed-by: Ray Wu Signed-off-by: Alex Hung Signed-off-by: Ray Wu Tested-by: Daniel Wheeler Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_psr.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_psr.c index 925a9ec7df19..0dadc0bb214f 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_psr.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_psr.c @@ -123,7 +123,7 @@ bool amdgpu_dm_set_psr_caps(struct dc_link *link, struct amdgpu_dm_connector *ac return false; /*disable allow psr/psrsu/replay on eDP1*/ - if (dc_get_edp_link_panel_inst(link->ctx->dc, link, &panel_inst) && panel_inst == 1) + if (dc_get_edp_link_panel_inst(dc, link, &panel_inst) && panel_inst == 1) return false; if (link_supports_psrsu(link)) @@ -145,22 +145,17 @@ bool amdgpu_dm_set_psr_caps(struct dc_link *link, struct amdgpu_dm_connector *ac bool amdgpu_dm_psr_is_active_allowed(struct amdgpu_display_manager *dm) { unsigned int i; - bool allow_active = false; - for (i = 0; i < dm->dc->current_state->stream_count ; i++) { - struct dc_link *link; - struct dc_stream_state *stream = dm->dc->current_state->streams[i]; + for (i = 0; i < dm->dc->current_state->stream_count; i++) { + const struct dc_link *link = dm->dc->current_state->streams[i]->link; - link = stream->link; if (!link) continue; - if (link->psr_settings.psr_feature_enabled && - link->psr_settings.psr_allow_active) { - allow_active = true; - break; - } + + if (link->psr_settings.psr_feature_enabled && link->psr_settings.psr_allow_active) + return true; } - return allow_active; + return false; } /*