aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0714-drm-amd-dal-Removed-dce_version-from-dc_context.patch
blob: ce6e781e9d5fccf686314b11883873eb76be40c0 (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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
From e4ed5a099fbafc6a8902d9fff731e91c338ccea2 Mon Sep 17 00:00:00 2001
From: David Rokhvarg <David.Rokhvarg@amd.com>
Date: Thu, 21 Jan 2016 15:52:43 -0500
Subject: [PATCH 0714/1110] drm/amd/dal: Removed dce_version from dc_context.

Also, improved valdation of 'number of links' to create,
which take into account 'Diagnostics' environment.

Signed-off-by: David Rokhvarg <David.Rokhvarg@amd.com>
Acked-by: Harry Wentland <harry.wentland@amd.com>
---
 drivers/gpu/drm/amd/dal/dc/core/dc.c        | 20 ++++++++++++--------
 drivers/gpu/drm/amd/dal/dc/core/dc_target.c | 10 +++++-----
 drivers/gpu/drm/amd/dal/include/dal_types.h |  2 --
 3 files changed, 17 insertions(+), 15 deletions(-)

diff --git a/drivers/gpu/drm/amd/dal/dc/core/dc.c b/drivers/gpu/drm/amd/dal/dc/core/dc.c
index 81bcc1e..d953784 100644
--- a/drivers/gpu/drm/amd/dal/dc/core/dc.c
+++ b/drivers/gpu/drm/amd/dal/dc/core/dc.c
@@ -83,17 +83,23 @@ static bool create_links(struct dc *dc, const struct dc_init_data *init_params)
 
 	dc->link_count = 0;
 
-	dcb = (struct dc_bios*)dal_adapter_service_get_bios_parser(init_params->adapter_srv);
+	dcb = dal_adapter_service_get_bios_parser(init_params->adapter_srv);
 
 	connectors_num = dcb->funcs->get_connectors_number(dcb);
 
-	if (0 == connectors_num || connectors_num > ENUM_ID_COUNT) {
-		dal_error("DC: Invalid number of connectors!\n");
+	if (connectors_num > ENUM_ID_COUNT) {
+		dal_error("DC: Number of connectors %d exceeds maximum of %d!\n",
+				connectors_num, ENUM_ID_COUNT);
 		return false;
 	}
 
-	dal_output_to_console("%s: connectors_num:%d\n", __func__,
-			connectors_num);
+	if (connectors_num == 0 && init_params->num_virtual_links == 0) {
+		dal_error("DC: Number of connectors can not be zero!\n");
+		return false;
+	}
+
+	dal_output_to_console("DC: %s: connectors_num: physical:%d, virtual:%d\n",
+			__func__, connectors_num, init_params->num_virtual_links);
 
 	for (i = 0; i < connectors_num; i++) {
 		struct link_init_data link_init_params = {0};
@@ -335,8 +341,6 @@ static bool construct(struct dc *dc, const struct dal_init_data *init_params)
 
 	dc->ctx = dc_init_data.ctx;
 
-	dc->ctx->dce_version = dal_adapter_service_get_dce_version(
-			dc_init_data.adapter_srv);
 	dc->ctx->dce_environment = dal_adapter_service_get_dce_environment(
 			dc_init_data.adapter_srv);
 
@@ -522,7 +526,7 @@ bool dc_commit_targets(
 	dal_logger_write(dc->ctx->logger,
 				LOG_MAJOR_INTERFACE_TRACE,
 				LOG_MINOR_COMPONENT_DC,
-				"%s: %d targets",
+				"%s: %d targets\n",
 				__func__,
 				target_count);
 
diff --git a/drivers/gpu/drm/amd/dal/dc/core/dc_target.c b/drivers/gpu/drm/amd/dal/dc/core/dc_target.c
index e7df2e2..a71034c 100644
--- a/drivers/gpu/drm/amd/dal/dc/core/dc_target.c
+++ b/drivers/gpu/drm/amd/dal/dc/core/dc_target.c
@@ -460,7 +460,7 @@ void dc_target_log(
 	dal_logger_write(dal_logger,
 			log_major,
 			log_minor,
-			"core_target 0x%x: surface_count=%d, stream_count=%d",
+			"core_target 0x%x: surface_count=%d, stream_count=%d\n",
 			core_target,
 			core_target->status.surface_count,
 			core_target->public.stream_count);
@@ -472,7 +472,7 @@ void dc_target_log(
 		dal_logger_write(dal_logger,
 			log_major,
 			log_minor,
-			"core_stream 0x%x: src: %d, %d, %d, %d; dst: %d, %d, %d, %d;",
+			"core_stream 0x%x: src: %d, %d, %d, %d; dst: %d, %d, %d, %d;\n",
 			core_stream,
 			core_stream->public.src.x,
 			core_stream->public.src.y,
@@ -485,20 +485,20 @@ void dc_target_log(
 		dal_logger_write(dal_logger,
 			log_major,
 			log_minor,
-			"\tpix_clk_khz: %d, h_total: %d, v_total: %d",
+			"\tpix_clk_khz: %d, h_total: %d, v_total: %d\n",
 			core_stream->public.timing.pix_clk_khz,
 			core_stream->public.timing.h_total,
 			core_stream->public.timing.v_total);
 		dal_logger_write(dal_logger,
 			log_major,
 			log_minor,
-			"\tsink name: %s, serial: %d",
+			"\tsink name: %s, serial: %d\n",
 			core_stream->sink->public.edid_caps.display_name,
 			core_stream->sink->public.edid_caps.serial_number);
 		dal_logger_write(dal_logger,
 			log_major,
 			log_minor,
-			"\tlink: %d",
+			"\tlink: %d\n",
 			core_stream->sink->link->public.link_index);
 	}
 }
diff --git a/drivers/gpu/drm/amd/dal/include/dal_types.h b/drivers/gpu/drm/amd/dal/include/dal_types.h
index 73c13c4..0e16ebb 100644
--- a/drivers/gpu/drm/amd/dal/include/dal_types.h
+++ b/drivers/gpu/drm/amd/dal/include/dal_types.h
@@ -179,8 +179,6 @@ struct dc_context {
 	struct dal_logger *logger;
 	void *cgs_device;
 
-	/* Diagnostics */
-	enum dce_version dce_version;
 	enum dce_environment dce_environment;
 };
 
-- 
2.7.4