summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorJonathan Gray <jsg@cvs.openbsd.org>2021-07-19 10:12:34 +0000
committerJonathan Gray <jsg@cvs.openbsd.org>2021-07-19 10:12:34 +0000
commit148622f9caf430ab2b45d0f6fa13e4cdf4fc6726 (patch)
tree465c3d3abb45f546f819fcb4e5adc2533aa6cf13 /sys
parent4cf03fc4498a25d77181f2981531f25232b5fcc3 (diff)
drm/amd/display: Update scaling settings on modeset
From Roman Li 01d6a693196595d356f0f5e42ab155c293470676 in linux 5.10.y/5.10.51 c521fc316d12fb9ea7b7680e301d673bceda922e in mainline linux
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/pci/drm/amd/display/amdgpu_dm/amdgpu_dm.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/pci/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/sys/dev/pci/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index 36f817b6763..d6a25c262e7 100644
--- a/sys/dev/pci/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/sys/dev/pci/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -8305,7 +8305,8 @@ skip_modeset:
BUG_ON(dm_new_crtc_state->stream == NULL);
/* Scaling or underscan settings */
- if (is_scaling_state_different(dm_old_conn_state, dm_new_conn_state))
+ if (is_scaling_state_different(dm_old_conn_state, dm_new_conn_state) ||
+ drm_atomic_crtc_needs_modeset(new_crtc_state))
update_stream_scaling_settings(
&new_crtc_state->mode, dm_new_conn_state, dm_new_crtc_state->stream);