summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/include/amd_shared.h
diff options
context:
space:
mode:
authorJoshua Aberback <joshua.aberback@amd.com>2024-09-12 18:47:22 -0400
committerAlex Deucher <alexander.deucher@amd.com>2024-10-01 17:33:15 -0400
commitce5057885ff70d0b61f5c332639e685b7ea720e8 (patch)
tree89c0e69c94bf14343009dc27ca7692541cd10525 /drivers/gpu/drm/amd/include/amd_shared.h
parente4dc767f1f38fd350775ea182cab2193292f1d98 (diff)
downloadlinux-ce5057885ff70d0b61f5c332639e685b7ea720e8.tar.gz
linux-ce5057885ff70d0b61f5c332639e685b7ea720e8.tar.bz2
linux-ce5057885ff70d0b61f5c332639e685b7ea720e8.zip
drm/amd/display: Clip rect size changes should be full updates
[Why] In cases where an MPO plane is being dragged around partially off-screen, it is possible to get a flip where the only scaling parameters to change are the clip rect size and position. Currently, clip rect size changes are considered medium updates, which can result in the clip rect being used for HW programming being larger than the clip rect that was used for the last DML validation. This can lead to mismatches in different parts of the pipe and can result in a p-state hang. [How] - consider clip rect size changes scaling changes, therefore full updates - refactor get_scaling_info_update_type for clarity - remove clip_size_change update flag Clip rect size changes were previously demoted from full updates as an optimization when the MPO + ODM policy changed to always pre-allocate MPO pipes, but it created the issue described above. Personally testing this use case, the performance feels fine with full update spam, and we expect this is a fairly infrequent use case. If the performance needs to be optimized in the future, consider reworking the entire update type logic to run a DML pass and determine the update type based on what DML says will actually change. Reviewed-by: Dillon Varone <dillon.varone@amd.com> Signed-off-by: Joshua Aberback <joshua.aberback@amd.com> Signed-off-by: Aurabindo Pillai <aurabindo.pillai@amd.com> Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/include/amd_shared.h')
0 files changed, 0 insertions, 0 deletions