drm/amd/display: Pass visible flag into surface programming
authorYongqiang Sun <yongqiang.sun@amd.com>
Mon, 9 Jan 2017 14:42:33 +0000 (09:42 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 26 Sep 2017 21:09:37 +0000 (17:09 -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/dce/dce_mem_input.c
drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.h
drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c
drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input.h
drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.c
drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.h
drivers/gpu/drm/amd/display/dc/inc/hw/mem_input.h

index e9005e0048e6b3e0d0728d0913efb578bbf1b1d0..130935fffba390a0dc617b0ab78b91a2c7fc4b94 100644 (file)
@@ -372,7 +372,8 @@ void dce_mem_input_program_surface_config(struct mem_input *mi,
        union plane_size *plane_size,
        enum dc_rotation_angle rotation,
        struct dc_plane_dcc_param *dcc,
-       bool horizontal_mirror)
+       bool horizontal_mirror,
+       bool visible)
 {
        REG_UPDATE(GRPH_ENABLE, GRPH_ENABLE, 1);
 
index 022272d30fe445b3a29e7c5de05f142992f56619..f90d586656efcc397f36d493a7cc7e3d533b51bb 100644 (file)
@@ -243,7 +243,8 @@ void dce_mem_input_program_surface_config(struct mem_input *mi,
        union plane_size *plane_size,
        enum dc_rotation_angle rotation,
        struct dc_plane_dcc_param *dcc,
-       bool horizontal_mirror);
+       bool horizontal_mirror,
+       bool visible);
 
 void dce_mem_input_allocate_dmif(struct mem_input *mi,
        uint32_t h_total,
index 965e47a5acfae5987cfb370296b111c8e9f503f4..751dbb88c265df0626122737a141c49512c4c6c8 100644 (file)
@@ -1538,7 +1538,8 @@ static void set_plane_config(
                        &surface->public.plane_size,
                        surface->public.rotation,
                        NULL,
-                       false);
+                       false,
+                       pipe_ctx->surface->public.visible);
 
        if (dc->public.config.gpu_vm_support)
                mi->funcs->mem_input_program_pte_vm(
@@ -1877,8 +1878,9 @@ static void dce110_program_front_end_for_pipe(
                        &surface->public.tiling_info,
                        &surface->public.plane_size,
                        surface->public.rotation,
+                       NULL,
                        false,
-                       false);
+                       pipe_ctx->surface->public.visible);
 
        if (dc->public.config.gpu_vm_support)
                mi->funcs->mem_input_program_pte_vm(
index a80a20c09da4367da76d1e41dcf4108215afad7e..4aec18c94c4958f0996392bbd6bb43f5a688d8c5 100644 (file)
@@ -105,7 +105,8 @@ bool  dce110_mem_input_program_surface_config(
        union plane_size *plane_size,
        enum dc_rotation_angle rotation,
        struct dc_plane_dcc_param *dcc,
-       bool horizontal_mirror);
+       bool horizontal_mirror,
+       bool visible);
 
 /*
  * dce110_mem_input_is_flip_pending
index 757e946d08372f00444e081b7225e7a7bf0cf498..b12506adcba4e27be7d05228f0e15061561e072d 100644 (file)
@@ -664,7 +664,8 @@ void dce110_mem_input_v_program_surface_config(
        union plane_size *plane_size,
        enum dc_rotation_angle rotation,
        struct dc_plane_dcc_param *dcc,
-       bool horizotal_mirror)
+       bool horizotal_mirror,
+       bool visible)
 {
        struct dce110_mem_input *mem_input110 = TO_DCE110_MEM_INPUT(mem_input);
 
index 5b1796ccefc03bdec654c4a894c535a99f028cd1..44cf066279c02c4ef37e0feecef596dd64a9bd33 100644 (file)
@@ -89,6 +89,7 @@ bool  dce110_mem_input_v_program_surface_config(
        enum surface_pixel_format format,
        union dc_tiling_info *tiling_info,
        union plane_size *plane_size,
-       enum dc_rotation_angle rotation);
+       enum dc_rotation_angle rotation,
+       bool visible);
 
 #endif
index 2c0774f95c1c7c4887208274487017a128b10499..ed980aed16771a4161eed95cfd4c73b04f1fc39d 100644 (file)
@@ -95,7 +95,8 @@ struct mem_input_funcs {
                union plane_size *plane_size,
                enum dc_rotation_angle rotation,
                struct dc_plane_dcc_param *dcc,
-               bool horizontal_mirror);
+               bool horizontal_mirror,
+               bool visible);
 
        bool (*mem_input_is_flip_pending)(struct mem_input *mem_input);