drm/amd/display: Update display endpoint control path.

[Why]
Some display endpoints may be dynamically mapped to the link encoders
which drive them.

[How]
Update the code paths for display enabling/disabling to accommodate
the dynamic association between links and link encoders.

Signed-off-by: Jimmy Kizito <Jimmy.Kizito@amd.com>
Reviewed-by: Jun Lei <Jun.Lei@amd.com>
Acked-by: Anson Jacob <Anson.Jacob@amd.com>
Tested-by: Dan Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Jimmy Kizito
2021-01-06 15:21:11 -05:00
committed by Alex Deucher
parent f42ef862fb
commit 79ed7354d7
4 changed files with 146 additions and 8 deletions

View File

@ -65,4 +65,22 @@ void link_enc_cfg_link_enc_unassign(
struct dc_state *state,
struct dc_stream_state *stream);
/*
* Check whether the transmitter driven by a link encoder is a mappable
* endpoint.
*/
bool link_enc_cfg_is_transmitter_mappable(
struct dc_state *state,
struct link_encoder *link_enc);
/* Return link using DIG link encoder resource. NULL if unused. */
struct dc_link *link_enc_cfg_get_link_using_link_enc(
struct dc_state *state,
enum engine_id eng_id);
/* Return DIG link encoder used by link. NULL if unused. */
struct link_encoder *link_enc_cfg_get_link_enc_used_by_link(
struct dc_state *state,
struct dc_link *link);
#endif /* DC_INC_LINK_ENC_CFG_H_ */