diff options
| author | Samson Tam <[email protected]> | 2022-06-28 16:20:00 -0400 | 
|---|---|---|
| committer | Alex Deucher <[email protected]> | 2022-07-13 11:25:17 -0400 | 
| commit | 652284d6db17f3c7810495fda059efdd84b61fde (patch) | |
| tree | 370d18ac9e52e0d8d06d26099278b1d20a37dc15 /tools/perf/scripts/python/net_dropmonitor.py | |
| parent | 2a93292fb7860b51550d1222c151de1a9fdc15da (diff) | |
drm/amd/display: Fix lag when moving windowed MPO across display using ODM 2:1 combine
[Why]
With single display odm 2:1 policy, when moving windowed MPO across
 the display, we experience a momentary lag when we move between the
 centre of the display and the right half of the display.  This is
 caused by the MPO pipe being reallocated when it crosses this
 boundary
[How]
Handle two cases:
1. if the head pipe has a MPO pipe already allocated in the old
 context, then use that pipe if it is available in the current
 context
2. if the head pipe is on the left side, check the right side to
 see if it has a MPO pipe already allocated.  If so, don't use
 that pipe if it is selected as the idle pipe in the current
 context
Add new function pointer called .acquire_idle_pipe_for_head_pipe
 that will pass in the head pipe and handle case 1
Add find_idle_secondary_pipe_check_mpo() to handle case 2
 if we don't hit case 1.
In dc_add_plane_to_context(), start with head pipe and check
 case 1 and 2 in call acquire_free_pipe_for_head().
If we are on the right side of the display, check case 1
 again by passing in right side pipe as the new head in
 call acquire_free_pipe_for_head().
Reviewed-by: Dmytro Laktyushkin <[email protected]>
Reviewed-by: Ariel Bernstein <[email protected]>
Acked-by: Solomon Chiu <[email protected]>
Signed-off-by: Samson Tam <[email protected]>
Tested-by: Daniel Wheeler <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/net_dropmonitor.py')
0 files changed, 0 insertions, 0 deletions