]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/amd/display: Clean up PSR helper functions
authorAlex Hung <alex.hung@amd.com>
Fri, 15 May 2026 22:30:45 +0000 (16:30 -0600)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 3 Jun 2026 17:43:23 +0000 (13:43 -0400)
[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 <ray.wu@amd.com>
Signed-off-by: Alex Hung <alex.hung@amd.com>
Signed-off-by: Ray Wu <ray.wu@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_psr.c

index 925a9ec7df19085ea88d9867c6a6cd0297f64bd9..0dadc0bb214ff584ec45eada25cacea0d99f8029 100644 (file)
@@ -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;
 }
 
 /*