aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXiaodong Yan <[email protected]>2020-04-05 16:40:46 -0400
committerAlex Deucher <[email protected]>2020-04-09 10:43:16 -0400
commitc5f5b9d934ba897182ba7159f4d1f1ff06234e3e (patch)
treefd2af151279ab55546e18c21e033eacabbd04c1d
parentb3a941df690f4b587ca005a4fca081f7b40be198 (diff)
drm/amd/display: blank dp stream before power off receiver
[why] power off dp receiver directly cause garbage during hw init [how] blank dp stream and then power off receiver Signed-off-by: Xiaodong Yan <[email protected]> Reviewed-by: Tony Cheng <[email protected]> Acked-by: Rodrigo Siqueira <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
-rw-r--r--drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c
index dad95f1a7041..079a33a96f90 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c
+++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c
@@ -1328,6 +1328,14 @@ void dcn10_init_hw(struct dc *dc)
uint8_t dpcd_power_state = '\0';
enum dc_status status = DC_ERROR_UNEXPECTED;
+ /* blank all dp streams before power off receiver,
+ * this should only impact DP
+ */
+ for (i = 0; i < dc->res_pool->stream_enc_count; i++) {
+ dc->res_pool->stream_enc[i]->funcs->dp_blank(
+ dc->res_pool->stream_enc[i]);
+ }
+
for (i = 0; i < dc->link_count; i++) {
if (dc->links[i]->connector_signal != SIGNAL_TYPE_DISPLAY_PORT)
continue;