diff options
author | Yongqiang Sun <yongqiang.sun@amd.com> | 2017-01-09 09:42:33 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2017-09-26 17:09:37 -0400 |
commit | 624d7c4708b27be2dc095579394efadd80f090dd (patch) | |
tree | b55aff1e7692689b07685712ee304a17bb64894c | |
parent | 02dfc70737ae4eafee202d23d29c16213ee750fb (diff) |
drm/amd/display: Pass visible flag into surface programming
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>
7 files changed, 16 insertions, 8 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.c b/drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.c index e9005e0048e6..130935fffba3 100644 --- a/drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.c +++ b/drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.c | |||
@@ -372,7 +372,8 @@ void dce_mem_input_program_surface_config(struct mem_input *mi, | |||
372 | union plane_size *plane_size, | 372 | union plane_size *plane_size, |
373 | enum dc_rotation_angle rotation, | 373 | enum dc_rotation_angle rotation, |
374 | struct dc_plane_dcc_param *dcc, | 374 | struct dc_plane_dcc_param *dcc, |
375 | bool horizontal_mirror) | 375 | bool horizontal_mirror, |
376 | bool visible) | ||
376 | { | 377 | { |
377 | REG_UPDATE(GRPH_ENABLE, GRPH_ENABLE, 1); | 378 | REG_UPDATE(GRPH_ENABLE, GRPH_ENABLE, 1); |
378 | 379 | ||
diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.h b/drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.h index 022272d30fe4..f90d586656ef 100644 --- a/drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.h +++ b/drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.h | |||
@@ -243,7 +243,8 @@ void dce_mem_input_program_surface_config(struct mem_input *mi, | |||
243 | union plane_size *plane_size, | 243 | union plane_size *plane_size, |
244 | enum dc_rotation_angle rotation, | 244 | enum dc_rotation_angle rotation, |
245 | struct dc_plane_dcc_param *dcc, | 245 | struct dc_plane_dcc_param *dcc, |
246 | bool horizontal_mirror); | 246 | bool horizontal_mirror, |
247 | bool visible); | ||
247 | 248 | ||
248 | void dce_mem_input_allocate_dmif(struct mem_input *mi, | 249 | void dce_mem_input_allocate_dmif(struct mem_input *mi, |
249 | uint32_t h_total, | 250 | uint32_t h_total, |
diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c index 965e47a5acfa..751dbb88c265 100644 --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c | |||
@@ -1538,7 +1538,8 @@ static void set_plane_config( | |||
1538 | &surface->public.plane_size, | 1538 | &surface->public.plane_size, |
1539 | surface->public.rotation, | 1539 | surface->public.rotation, |
1540 | NULL, | 1540 | NULL, |
1541 | false); | 1541 | false, |
1542 | pipe_ctx->surface->public.visible); | ||
1542 | 1543 | ||
1543 | if (dc->public.config.gpu_vm_support) | 1544 | if (dc->public.config.gpu_vm_support) |
1544 | mi->funcs->mem_input_program_pte_vm( | 1545 | mi->funcs->mem_input_program_pte_vm( |
@@ -1877,8 +1878,9 @@ static void dce110_program_front_end_for_pipe( | |||
1877 | &surface->public.tiling_info, | 1878 | &surface->public.tiling_info, |
1878 | &surface->public.plane_size, | 1879 | &surface->public.plane_size, |
1879 | surface->public.rotation, | 1880 | surface->public.rotation, |
1881 | NULL, | ||
1880 | false, | 1882 | false, |
1881 | false); | 1883 | pipe_ctx->surface->public.visible); |
1882 | 1884 | ||
1883 | if (dc->public.config.gpu_vm_support) | 1885 | if (dc->public.config.gpu_vm_support) |
1884 | mi->funcs->mem_input_program_pte_vm( | 1886 | mi->funcs->mem_input_program_pte_vm( |
diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input.h b/drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input.h index a80a20c09da4..4aec18c94c49 100644 --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input.h +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input.h | |||
@@ -105,7 +105,8 @@ bool dce110_mem_input_program_surface_config( | |||
105 | union plane_size *plane_size, | 105 | union plane_size *plane_size, |
106 | enum dc_rotation_angle rotation, | 106 | enum dc_rotation_angle rotation, |
107 | struct dc_plane_dcc_param *dcc, | 107 | struct dc_plane_dcc_param *dcc, |
108 | bool horizontal_mirror); | 108 | bool horizontal_mirror, |
109 | bool visible); | ||
109 | 110 | ||
110 | /* | 111 | /* |
111 | * dce110_mem_input_is_flip_pending | 112 | * dce110_mem_input_is_flip_pending |
diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.c index 757e946d0837..b12506adcba4 100644 --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.c +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.c | |||
@@ -664,7 +664,8 @@ void dce110_mem_input_v_program_surface_config( | |||
664 | union plane_size *plane_size, | 664 | union plane_size *plane_size, |
665 | enum dc_rotation_angle rotation, | 665 | enum dc_rotation_angle rotation, |
666 | struct dc_plane_dcc_param *dcc, | 666 | struct dc_plane_dcc_param *dcc, |
667 | bool horizotal_mirror) | 667 | bool horizotal_mirror, |
668 | bool visible) | ||
668 | { | 669 | { |
669 | struct dce110_mem_input *mem_input110 = TO_DCE110_MEM_INPUT(mem_input); | 670 | struct dce110_mem_input *mem_input110 = TO_DCE110_MEM_INPUT(mem_input); |
670 | 671 | ||
diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.h b/drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.h index 5b1796ccefc0..44cf066279c0 100644 --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.h +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.h | |||
@@ -89,6 +89,7 @@ bool dce110_mem_input_v_program_surface_config( | |||
89 | enum surface_pixel_format format, | 89 | enum surface_pixel_format format, |
90 | union dc_tiling_info *tiling_info, | 90 | union dc_tiling_info *tiling_info, |
91 | union plane_size *plane_size, | 91 | union plane_size *plane_size, |
92 | enum dc_rotation_angle rotation); | 92 | enum dc_rotation_angle rotation, |
93 | bool visible); | ||
93 | 94 | ||
94 | #endif | 95 | #endif |
diff --git a/drivers/gpu/drm/amd/display/dc/inc/hw/mem_input.h b/drivers/gpu/drm/amd/display/dc/inc/hw/mem_input.h index 2c0774f95c1c..ed980aed1677 100644 --- a/drivers/gpu/drm/amd/display/dc/inc/hw/mem_input.h +++ b/drivers/gpu/drm/amd/display/dc/inc/hw/mem_input.h | |||
@@ -95,7 +95,8 @@ struct mem_input_funcs { | |||
95 | union plane_size *plane_size, | 95 | union plane_size *plane_size, |
96 | enum dc_rotation_angle rotation, | 96 | enum dc_rotation_angle rotation, |
97 | struct dc_plane_dcc_param *dcc, | 97 | struct dc_plane_dcc_param *dcc, |
98 | bool horizontal_mirror); | 98 | bool horizontal_mirror, |
99 | bool visible); | ||
99 | 100 | ||
100 | bool (*mem_input_is_flip_pending)(struct mem_input *mem_input); | 101 | bool (*mem_input_is_flip_pending)(struct mem_input *mem_input); |
101 | 102 | ||