drm/amd/display: wait for T9 after backlight off mainlink blank.
authorCharlene Liu <charlene.liu@amd.com>
Thu, 18 Jan 2018 17:53:04 +0000 (12:53 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 19 Feb 2018 19:19:24 +0000 (14:19 -0500)
Signed-off-by: Charlene Liu <charlene.liu@amd.com>
Reviewed-by: Tony Cheng <Tony.Cheng@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/core/dc_link_hwss.c
drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c
drivers/gpu/drm/amd/display/dc/inc/link_hwss.h

index 2096f2a179f2c5e3509ac1c60115049f3a6e9ee5..524f4aafa5437646bfbdaa1e9fd22707bdf81fbe 100644 (file)
@@ -102,7 +102,7 @@ void dp_enable_link_phy(
        dp_receiver_power_ctrl(link, true);
 }
 
-static bool edp_receiver_ready_T9(struct dc_link *link)
+bool edp_receiver_ready_T9(struct dc_link *link)
 {
        unsigned int tries = 0;
        unsigned char sinkstatus = 0;
@@ -130,7 +130,6 @@ void dp_disable_link_phy(struct dc_link *link, enum signal_type signal)
                dp_receiver_power_ctrl(link, false);
 
        if (signal == SIGNAL_TYPE_EDP) {
-               edp_receiver_ready_T9(link);
                link->link_enc->funcs->disable_output(link->link_enc, signal);
                link->dc->hwss.edp_power_control(link, false);
        } else
index d293cafb64184c0752750a1291b899cb22e8df0e..fbb84a7ccaf5081b2d58ed36c2876d185f4b1594 100644 (file)
@@ -928,6 +928,8 @@ void hwss_edp_backlight_control(
         */
        /* dc_service_sleep_in_milliseconds(50); */
        link_transmitter_control(ctx->dc_bios, &cntl);
+       /*edp 1.2*/
+       edp_receiver_ready_T9(link);
 }
 
 void dce110_disable_stream(struct pipe_ctx *pipe_ctx, int option)
index f2b8c9a376d5a7f8e70c7b8ddd7afbc7c0dee197..46bb201aab6af71428c345d9ea783f39fb997c52 100644 (file)
@@ -51,6 +51,7 @@ void dp_enable_link_phy(
        const struct dc_link_settings *link_settings);
 
 void dp_receiver_power_ctrl(struct dc_link *link, bool on);
+bool edp_receiver_ready_T9(struct dc_link *link);
 
 void dp_disable_link_phy(struct dc_link *link, enum signal_type signal);