drm/amd/display: add backlight control in blankstream.
authorCharlene Liu <charlene.liu@amd.com>
Mon, 28 Aug 2017 23:35:25 +0000 (19:35 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 26 Sep 2017 22:17:19 +0000 (18:17 -0400)
Signed-off-by: Charlene Liu <charlene.liu@amd.com>
Reviewed-by: Krunoslav Kovac <Krunoslav.Kovac@amd.com>
Acked-by: Harry Wentland <Harry.Wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c

index 3b4ca1a9217fe51bb32174bd538fdaef2c4c7fd5..9fb0ba7e7b7d6c27d43c4c5003d2e14f0e8f4d5e 100644 (file)
@@ -778,9 +778,11 @@ void dce110_disable_stream(struct pipe_ctx *pipe_ctx)
 
 
        /* blank at encoder level */
-       if (dc_is_dp_signal(pipe_ctx->stream->signal))
+       if (dc_is_dp_signal(pipe_ctx->stream->signal)) {
+               if (pipe_ctx->stream->sink->link->connector_signal == SIGNAL_TYPE_EDP)
+                       link->link_enc->funcs->backlight_control(link->link_enc, false);
                pipe_ctx->stream_res.stream_enc->funcs->dp_blank(pipe_ctx->stream_res.stream_enc);
-
+       }
        link->link_enc->funcs->connect_dig_be_to_fe(
                        link->link_enc,
                        pipe_ctx->stream_res.stream_enc->id,
@@ -792,12 +794,15 @@ void dce110_unblank_stream(struct pipe_ctx *pipe_ctx,
                struct dc_link_settings *link_settings)
 {
        struct encoder_unblank_param params = { { 0 } };
+       struct dc_link *link = pipe_ctx->stream->sink->link;
 
        /* only 3 items below are used by unblank */
        params.pixel_clk_khz =
                pipe_ctx->stream->timing.pix_clk_khz;
        params.link_settings.link_rate = link_settings->link_rate;
        pipe_ctx->stream_res.stream_enc->funcs->dp_unblank(pipe_ctx->stream_res.stream_enc, &params);
+       if (link->connector_signal == SIGNAL_TYPE_EDP)
+                       link->link_enc->funcs->backlight_control(link->link_enc, true);
 }