Message ID | 20221109182010.171534-1-hamza.mahfooz@amd.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2] drm/amd/display: only fill dirty rectangles when PSR is enabled | expand |
On 11/9/22 13:20, Hamza Mahfooz wrote: > Currently, we are calling fill_dc_dirty_rects() even if PSR isn't > supported by the relevant link in amdgpu_dm_commit_planes(), this is > undesirable especially because when drm.debug is enabled we are printing > messages in fill_dc_dirty_rects() that are only useful for debugging PSR > (and confusing otherwise). So, we can instead limit the filling of dirty > rectangles to only when PSR is enabled. > > Signed-off-by: Hamza Mahfooz <hamza.mahfooz@amd.com> Reviewed-by: Leo Li <sunpeng.li@amd.com> Thanks > --- > v2: give a more concrete reason. > --- > drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > index 66eb16fbe09f..956a6e494709 100644 > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > @@ -7697,9 +7697,10 @@ static void amdgpu_dm_commit_planes(struct drm_atomic_state *state, > bundle->surface_updates[planes_count].plane_info = > &bundle->plane_infos[planes_count]; > > - fill_dc_dirty_rects(plane, old_plane_state, new_plane_state, > - new_crtc_state, > - &bundle->flip_addrs[planes_count]); > + if (acrtc_state->stream->link->psr_settings.psr_feature_enabled) > + fill_dc_dirty_rects(plane, old_plane_state, > + new_plane_state, new_crtc_state, > + &bundle->flip_addrs[planes_count]); > > /* > * Only allow immediate flips for fast updates that don't
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c index 66eb16fbe09f..956a6e494709 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c @@ -7697,9 +7697,10 @@ static void amdgpu_dm_commit_planes(struct drm_atomic_state *state, bundle->surface_updates[planes_count].plane_info = &bundle->plane_infos[planes_count]; - fill_dc_dirty_rects(plane, old_plane_state, new_plane_state, - new_crtc_state, - &bundle->flip_addrs[planes_count]); + if (acrtc_state->stream->link->psr_settings.psr_feature_enabled) + fill_dc_dirty_rects(plane, old_plane_state, + new_plane_state, new_crtc_state, + &bundle->flip_addrs[planes_count]); /* * Only allow immediate flips for fast updates that don't
Currently, we are calling fill_dc_dirty_rects() even if PSR isn't supported by the relevant link in amdgpu_dm_commit_planes(), this is undesirable especially because when drm.debug is enabled we are printing messages in fill_dc_dirty_rects() that are only useful for debugging PSR (and confusing otherwise). So, we can instead limit the filling of dirty rectangles to only when PSR is enabled. Signed-off-by: Hamza Mahfooz <hamza.mahfooz@amd.com> --- v2: give a more concrete reason. --- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)