drm/amd/display: Fix Scaling (RMX_*) for DC driver
authorBhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
Fri, 16 Nov 2018 16:46:14 +0000 (11:46 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 26 Nov 2018 20:46:18 +0000 (15:46 -0500)
commitb333730d126efcc8f2fad60df3c9b3971ff59833
treeddb94ebf610318c937017cbbaa8cf7575a690e76
parent91b66c47ba3468f7882ea4a84d5e0e0c186b638f
drm/amd/display: Fix Scaling (RMX_*) for DC driver

Before:
We use drm_match_cea_mode() to get the vic for any mode we
want to set, most of the time vic will be different for the new mode.

DC uses memcmp to check if timing changed, in this case DC will
say timing changed and we endup doing a full modeset.

Current:
Now we check if !RMX_OFF and old_refresh == new_refresh if so
we copy the vic from old timing. In a case where we are currently on
a lower timing and want to change to higher mode, stream->dst will be
different and cause us to do a full modeset, which is what we want.

Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
Reviewed-by: Leo Li <sunpeng.li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c