linux_dsm_epyc7002/drivers/gpu/drm/amd/display
David Francis bc7f670ee0 drm/amd/display: Perform plane updates only when needed
[Why]
Our old logic: if pageflip, update freesync and plane address.
Otherwise, update everything.
This over-updated on non-pageflip cases, and it failed to
update if pageflip and non-pageflip changes occurred on
the same commit

[How]
Update flip_addrs on pageflips.
Update scaling_info when it changes.
Update color fields on color changes.
Updates plane_info always because we don't have a good way of
knowing when it needs to be updated.

Unfortunately, this means that every stream commit involves two
calls into DC.  In particular, on pageflips there is a second,
pointless update that changes nothing but costs several
microseconds (about a 50% increase in time taken). The update is
fast, but there are comparisons and some useless programming.

Leave TODOs indicating dissatisfaction.

Signed-off-by: David Francis <David.Francis@amd.com>
Reviewed-by: Harry Wentland <Harry.Wentland@amd.com>
Reviewed-by: Nicholas Kazlauskas <Nicholas.Kazlauskas@amd.com>
Acked-by: Leo Li <sunpeng.li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2019-01-25 16:15:36 -05:00
..
amdgpu_dm drm/amd/display: Perform plane updates only when needed 2019-01-25 16:15:36 -05:00
dc drm/amd/display: Let updates with no scaling changes be fast 2019-01-25 16:15:36 -05:00
include drm/amd/display: Remove i2caux folder 2019-01-14 15:40:54 -05:00
modules drm/amd/display: Add new infopacket definition 2019-01-14 15:42:12 -05:00
Kconfig
Makefile drm/amd/display: Load DMCU IRAM 2018-11-26 15:47:53 -05:00
TODO