drm/amd/display: wa to program split pipedegamma regs after mode set.
authorYongqiang Sun <yongqiang.sun@amd.com>
Mon, 2 Oct 2017 21:08:24 +0000 (17:08 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Sat, 21 Oct 2017 20:47:11 +0000 (16:47 -0400)
Signed-off-by: Yongqiang Sun <yongqiang.sun@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.c

index 33a63c7d7a8e2be7205cdaa53bfd51a090403c35..09bab93815a3c33f2ab7eddbb2019ac65b339d54 100644 (file)
@@ -1282,7 +1282,9 @@ static void commit_planes_for_stream(struct dc *dc,
                        if (update_type == UPDATE_TYPE_FAST)
                                continue;
 
-                       if (srf_updates[i].in_transfer_func)
+                       /* work around to program degamma regs for split pipe after set mode. */
+                       if (srf_updates[i].in_transfer_func || (pipe_ctx->top_pipe &&
+                                       pipe_ctx->top_pipe->plane_state == pipe_ctx->plane_state))
                                dc->hwss.set_input_transfer_func(
                                                pipe_ctx, pipe_ctx->plane_state);