Skip to content

Commit 6eb3cf2

Browse files
Nicholas Kazlauskasalexdeucher
authored andcommitted
drm/amd/display: Only revalidate bandwidth on medium and fast updates
[Why] Changes that are fast don't require updating DLG parameters making this call unnecessary. Considering this is an expensive call it should not be done on every flip. DML touches clocks, p-state support, DLG params and a few other DC internal flags and these aren't expected during fast. A hang has been reported with this change when called on every flip which suggests that modifying these fields is not recommended behavior on fast updates. [How] Guard the validation to only happen if update type isn't FAST. Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1191 Fixes: a24eaa5 ("drm/amd/display: Revalidate bandwidth before commiting DC updates") Signed-off-by: Nicholas Kazlauskas <[email protected]> Acked-by: Alex Deucher <[email protected]> Reviewed-by: Roman Li <[email protected]> Signed-off-by: Alex Deucher <[email protected]> Cc: [email protected]
1 parent 7e89e4a commit 6eb3cf2

File tree

1 file changed

+6
-4
lines changed
  • drivers/gpu/drm/amd/display/dc/core

1 file changed

+6
-4
lines changed

drivers/gpu/drm/amd/display/dc/core/dc.c

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2538,10 +2538,12 @@ void dc_commit_updates_for_stream(struct dc *dc,
25382538

25392539
copy_stream_update_to_stream(dc, context, stream, stream_update);
25402540

2541-
if (!dc->res_pool->funcs->validate_bandwidth(dc, context, false)) {
2542-
DC_ERROR("Mode validation failed for stream update!\n");
2543-
dc_release_state(context);
2544-
return;
2541+
if (update_type > UPDATE_TYPE_FAST) {
2542+
if (!dc->res_pool->funcs->validate_bandwidth(dc, context, false)) {
2543+
DC_ERROR("Mode validation failed for stream update!\n");
2544+
dc_release_state(context);
2545+
return;
2546+
}
25452547
}
25462548

25472549
commit_planes_for_stream(

0 commit comments

Comments
 (0)