[PATCH 10/10] drm/amd/display: Pass visible flag into surface programming
Harry Wentland
harry.wentland at amd.com
Wed Jan 11 18:11:25 UTC 2017
From: Yongqiang Sun <yongqiang.sun at amd.com>
Change-Id: Ic6c140575b5ffb6ce32e75d3a3725312a8be6942
Signed-off-by: Yongqiang Sun <yongqiang.sun at amd.com>
Reviewed-by: Tony Cheng <Tony.Cheng at amd.com>
Acked-by: Harry Wentland <Harry.Wentland at amd.com>
---
drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.c | 3 ++-
drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.h | 3 ++-
drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c | 6 ++++--
drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input.h | 3 ++-
drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.c | 3 ++-
drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.h | 3 ++-
drivers/gpu/drm/amd/display/dc/inc/hw/mem_input.h | 3 ++-
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,
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);
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,
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,
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(
&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(
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(
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
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(
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);
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(
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
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 {
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);
--
2.9.3
More information about the amd-gfx
mailing list