aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0529-drm-amd-dal-reduce-input-for-mem_input_program_surfa.patch
blob: d06a616406b5a7296a46a712908fb48d6886e076 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
From 16e662ce24e63c45a5070c1391e52d7db0a749b6 Mon Sep 17 00:00:00 2001
From: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>
Date: Thu, 26 Nov 2015 17:06:19 -0500
Subject: [PATCH 0529/1110] drm/amd/dal: reduce input for
 mem_input_program_surface_config

Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>
Signed-off-by: Harry Wentland <harry.wentland@amd.com>
Acked-by: Harry Wentland <harry.wentland@amd.com>
---
 drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c |  5 ++++-
 drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.c    | 12 +++++++-----
 drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.h    |  5 ++++-
 drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c     |  2 +-
 4 files changed, 16 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c
index cb2e3d0..cf893c3 100644
--- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c
+++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c
@@ -1624,7 +1624,10 @@ static bool set_plane_config(
 
 	dce110_mem_input_program_surface_config(
 			mi,
-			&surface->public);
+			surface->public.format,
+			&surface->public.tiling_info,
+			&surface->public.plane_size,
+			surface->public.rotation);
 
 	pipe_control_lock(
 			ctx,
diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.c
index e1d7e27..889c02d 100644
--- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.c
+++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.c
@@ -461,15 +461,17 @@ bool dce110_mem_input_program_surface_flip_and_addr(
 
 bool dce110_mem_input_program_surface_config(
 	struct mem_input *mem_input,
-	const struct dc_surface *surface)
+	enum surface_pixel_format format,
+	union plane_tiling_info *tiling_info,
+	union plane_size *plane_size,
+	enum dc_rotation_angle rotation)
 {
 	struct dce110_mem_input *mem_input110 = TO_DCE110_MEM_INPUT(mem_input);
 
 	enable(mem_input110);
-	program_tiling(mem_input110, &surface->tiling_info, surface->format);
-	program_size_and_rotation(
-		mem_input110, surface->rotation, &surface->plane_size);
-	program_pixel_format(mem_input110, surface->format);
+	program_tiling(mem_input110, tiling_info, format);
+	program_size_and_rotation(mem_input110, rotation, plane_size);
+	program_pixel_format(mem_input110, format);
 
 	return true;
 }
diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.h b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.h
index 88697be..7392750 100644
--- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.h
+++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.h
@@ -108,7 +108,10 @@ bool dce110_mem_input_program_surface_flip_and_addr(
  */
 bool  dce110_mem_input_program_surface_config(
 	struct mem_input *mem_input,
-	const struct dc_surface *surface);
+	enum surface_pixel_format format,
+	union plane_tiling_info *tiling_info,
+	union plane_size *plane_size,
+	enum dc_rotation_angle rotation);
 
 
 #endif
diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c
index ebae5e3..126ebd2 100644
--- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c
+++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c
@@ -625,11 +625,11 @@ bool dce110_construct_resource_pool(
 
 	for (i = 0; i < pool->stream_enc_count; i++) {
 		struct stream_enc_init_data enc_init_data = { 0 };
-		/* TODO: rework fragile code*/
 		enc_init_data.stream_engine_id = i;
 		enc_init_data.ctx = dc->ctx;
 		enc_init_data.bp = dal_adapter_service_get_bios_parser(
 			adapter_serv);
+		/* TODO: rework fragile code*/
 		if (pool->stream_engines.u_all & 1 << i) {
 			pool->stream_enc[i] = dce110_stream_encoder_create(
 					&enc_init_data);
-- 
2.7.4