linux/drivers/gpu/drm/amd
Nicholas Kazlauskas 37fb6e8a96 drm/amd/display: Enable fast plane updates when state->allow_modeset = true
[Why]
Whenever the a modeset is allowed (but not neccessarily required) we
currently recreate all the planes in the state. Most IGT tests and
legacy IOCTLs create atomic commits with this flag set, so the pipes
are often unnecessarily reprogrammed.

Poor performance and stuttering can occur when many of these commits
are frequently issued.

This flag was needed when the appropriate conditions for checking
whether the planes needed a reset were not in place, but
should_reset_plane should cover everything needed now.

[How]
Drop the check for state->allow_modeset in should_reset_plane.

All planes on a CRTC should reset in the following conditions:
- The CRTC needs a modeset
- The CRTC degamma changes
- Planes are added or removed to the CRTC

These conditions are all covered in should_reset_plane.

We still can't drop the format change check in should_reset_plane since
fill_dc_plane_info_and_addr isn't called when validating the state, so
we can't tell if a FULL update is needed or not.

Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Reviewed-by: David Francis <david.francis@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2019-06-11 12:44:40 -05:00
..
acp treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
amdgpu drm/amd/amdgpu: remove vram_page_split kernel option (v3) 2019-06-11 12:44:23 -05:00
amdkfd drm/amdkfd: Implement queue priority controls for gfx9 2019-06-11 12:35:25 -05:00
display drm/amd/display: Enable fast plane updates when state->allow_modeset = true 2019-06-11 12:44:40 -05:00
include drm/amdkfd: Shift sdma_engine_id and sdma_queue_id in mqd 2019-05-24 12:21:01 -05:00
powerplay drm/amd/powerplay: add set_power_profile_mode for raven1_refresh 2019-06-11 12:39:57 -05:00