Alvin Lee ca8179ba11 drm/amd/display: Update phantom pipe enable / disable sequence
Previously we would call apply_ctx_to_hw to enable and disable
phantom pipes. However, apply_ctx_to_hw can potentially update
non-phantom pipes as well which is undesired. Instead of calling
apply_ctx_to_hw as a whole, call the relevant helpers for each
phantom pipe when enabling / disabling which will avoid us modifying
hardware state for non-phantom pipes unknowingly.

The use case is for an FRL display where FRL_Update is requested
by the display. In this case link_state_valid flag is cleared in
a passive callback thread and should be handled in the next stream /
link update. However, due to the call to apply_ctx_to_hw for the
phantom pipes during a flip, the main pipes were modified outside
of the desired sequence (driver does not handle link_state_valid = 0
on flips).

Cc: stable@vger.kernel.org # 6.6+
Reviewed-by: Samson Tam <samson.tam@amd.com>
Acked-by: Hamza Mahfooz <hamza.mahfooz@amd.com>
Signed-off-by: Alvin Lee <alvin.lee2@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2024-02-07 18:27:09 -05:00
..
2024-01-18 16:22:43 -08:00
2024-01-12 11:32:19 -08:00
2024-01-18 17:25:39 -08:00
2024-01-26 15:19:43 -08:00
2024-01-18 11:37:24 -08:00
2024-01-10 08:45:22 -08:00
2024-01-18 09:48:40 -08:00
2024-01-26 13:52:18 -08:00
2024-01-18 11:37:24 -08:00
2024-01-18 11:37:24 -08:00
2024-01-09 16:32:11 -08:00
2024-01-18 11:37:24 -08:00
2024-01-12 13:52:21 -08:00
2024-02-02 12:52:44 -08:00
2024-01-18 11:37:24 -08:00
2024-01-10 16:43:55 -08:00
2024-01-17 15:25:27 -08:00
2024-02-02 12:33:50 -05:00
2024-01-18 15:16:57 -08:00
2024-01-18 11:37:24 -08:00
2024-01-18 11:37:24 -08:00
2024-01-18 16:44:03 -08:00
2024-01-18 15:16:57 -08:00
2024-01-05 15:55:41 +05:30
2024-01-09 16:12:44 -08:00
2024-01-18 09:48:40 -08:00
2024-01-17 14:37:40 -08:00
2024-01-11 11:31:46 -08:00
2024-01-18 17:08:31 -08:00
2024-01-20 09:42:32 -08:00
2024-01-20 09:42:32 -08:00
2024-01-04 17:03:47 +01:00
2024-02-02 08:36:38 -08:00
2024-01-18 16:44:03 -08:00
2024-01-18 15:57:25 -08:00
2024-01-18 16:44:03 -08:00
2024-01-18 16:44:03 -08:00
2024-01-12 13:32:30 -08:00
2024-01-17 13:41:38 -08:00
2024-01-12 12:38:37 +01:00