mirror of
https://github.com/torvalds/linux.git
synced 2026-04-24 17:42:27 -04:00
drm/amd/display: Apply all surface updates onto surfaces
[Why] Most surface updates weren't propagated onto the surface during dc_commit_updates_for_stream. This makes it more difficult for DC to determine the actual surface update type required. [How] Use copy_surface_update_to_plane to propagate the changes. The FreeSync surface timing information update for BTR has been moved out of amdgpu_dm.c into this function as well. Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Reviewed-by: Sun peng Li <Sunpeng.Li@amd.com> Acked-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
committed by
Alex Deucher
parent
9ca089925f
commit
f3e3698d05
@@ -4760,15 +4760,6 @@ static void amdgpu_dm_commit_planes(struct drm_atomic_state *state,
|
||||
surface,
|
||||
flip->flip_addrs[flip_count].flip_timestamp_in_us);
|
||||
|
||||
/* Update surface timing information. */
|
||||
surface->time.time_elapsed_in_us[surface->time.index] =
|
||||
flip->flip_addrs[flip_count].flip_timestamp_in_us -
|
||||
surface->time.prev_update_time_in_us;
|
||||
surface->time.prev_update_time_in_us = flip->flip_addrs[flip_count].flip_timestamp_in_us;
|
||||
surface->time.index++;
|
||||
if (surface->time.index >= DC_PLANE_UPDATE_TIMES_MAX)
|
||||
surface->time.index = 0;
|
||||
|
||||
DRM_DEBUG_DRIVER("%s Flipping to hi: 0x%x, low: 0x%x\n",
|
||||
__func__,
|
||||
flip->flip_addrs[flip_count].address.grph.addr.high_part,
|
||||
|
||||
Reference in New Issue
Block a user