summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Hung <alex.hung@amd.com>2026-05-15 16:30:45 -0600
committerAlex Deucher <alexander.deucher@amd.com>2026-06-03 13:43:23 -0400
commit9aef3d167a1c0f1a59ef043ee7b0f525936fbfc6 (patch)
tree96009d857742c3d05c27b18a9990a884bba8115b
parentbb3ab95ac78671b128314b3515aa007439b7b58d (diff)
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 <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>
-rw-r--r--drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_psr.c19
1 files changed, 7 insertions, 12 deletions
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;
}
/*