aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3333-Fixes-compilation-build-issues.patch
blob: 0c7c66e88ea182719d0ff04f77ea9b1858bf9b93 (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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
From 407fe1b09100cade0603943ad2fe1252387d9319 Mon Sep 17 00:00:00 2001
From: Kalyan Alle <kalyan.alle@amd.com>
Date: Thu, 3 May 2018 12:00:03 +0530
Subject: [PATCH 3333/4131] Fixes compilation/build issues

This patch fixes the build issues came up while
porting.

Signed-off-by: kalyan alle <kalyan.alle@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c  | 12 ++++--------
 drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c           |  2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c           |  5 -----
 drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c            |  2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_object.h        |  8 --------
 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c           |  5 ++---
 drivers/gpu/drm/amd/amdgpu/psp_v10_0.c            |  3 +--
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h |  2 +-
 drivers/gpu/drm/amd/lib/Makefile                  |  3 ---
 drivers/gpu/drm/amd/lib/backport/Makefile         |  5 -----
 drivers/gpu/drm/amd/lib/backport/backport.h       |  6 ------
 drivers/gpu/drm/scheduler/gpu_scheduler.c         |  2 +-
 include/drm/drm_modeset_helper_vtables.h          | 16 ++++++++++++++++
 include/uapi/drm/amdgpu_drm.h                     |  5 +++++
 14 files changed, 32 insertions(+), 44 deletions(-)
 delete mode 100644 drivers/gpu/drm/amd/lib/backport/Makefile
 delete mode 100644 drivers/gpu/drm/amd/lib/backport/backport.h

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
index e5471be..8f0aa93 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
@@ -336,7 +336,6 @@ static void amdgpu_amdkfd_add_eviction_fence(struct amdgpu_bo *bo,
 static int amdgpu_amdkfd_bo_validate(struct amdgpu_bo *bo, uint32_t domain,
 				     bool wait)
 {
-	struct ttm_operation_ctx ctx = { false, false };
 	int ret;
 
 	if (WARN(amdgpu_ttm_tt_get_usermm(bo->tbo.ttm),
@@ -345,7 +344,7 @@ static int amdgpu_amdkfd_bo_validate(struct amdgpu_bo *bo, uint32_t domain,
 
 	amdgpu_ttm_placement_from_domain(bo, domain);
 
-	ret = ttm_bo_validate(&bo->tbo, &bo->placement, &ctx);
+	ret = ttm_bo_validate(&bo->tbo, &bo->placement, false, false);
 	if (ret)
 		goto validate_fail;
 	if (wait) {
@@ -588,7 +587,6 @@ static int init_user_pages(struct kgd_mem *mem, struct mm_struct *mm,
 {
 	struct amdkfd_process_info *process_info = mem->process_info;
 	struct amdgpu_bo *bo = mem->bo;
-	struct ttm_operation_ctx ctx = { true, false };
 	int ret = 0;
 
 	mutex_lock(&process_info->lock);
@@ -634,7 +632,7 @@ static int init_user_pages(struct kgd_mem *mem, struct mm_struct *mm,
 		goto release_out;
 	}
 	amdgpu_ttm_placement_from_domain(bo, mem->domain);
-	ret = ttm_bo_validate(&bo->tbo, &bo->placement, &ctx);
+	ret = ttm_bo_validate(&bo->tbo, &bo->placement, true, false);
 	if (ret)
 		pr_err("%s: failed to validate BO\n", __func__);
 	amdgpu_bo_unreserve(bo);
@@ -1961,7 +1959,6 @@ static int update_invalid_user_pages(struct amdkfd_process_info *process_info,
 {
 	struct kgd_mem *mem, *tmp_mem;
 	struct amdgpu_bo *bo;
-	struct ttm_operation_ctx ctx = { false, false };
 	int invalid, ret;
 
 	/* Move all invalidated BOs to the userptr_inval_list and
@@ -1978,7 +1975,7 @@ static int update_invalid_user_pages(struct amdkfd_process_info *process_info,
 		if (amdgpu_bo_reserve(bo, true))
 			return -EAGAIN;
 		amdgpu_ttm_placement_from_domain(bo, AMDGPU_GEM_DOMAIN_CPU);
-		ret = ttm_bo_validate(&bo->tbo, &bo->placement, &ctx);
+		ret = ttm_bo_validate(&bo->tbo, &bo->placement, false, false);
 		amdgpu_bo_unreserve(bo);
 		if (ret) {
 			pr_err("%s: Failed to invalidate userptr BO\n",
@@ -2059,7 +2056,6 @@ static int validate_invalid_user_pages(struct amdkfd_process_info *process_info)
 	struct amdkfd_vm *peer_vm;
 	struct kgd_mem *mem, *tmp_mem;
 	struct amdgpu_bo *bo;
-	struct ttm_operation_ctx ctx = { false, false };
 	int i, ret;
 
 	pd_bo_list_entries = kcalloc(process_info->n_vms,
@@ -2122,7 +2118,7 @@ static int validate_invalid_user_pages(struct amdkfd_process_info *process_info)
 			amdgpu_ttm_tt_set_user_pages(bo->tbo.ttm,
 						     mem->user_pages);
 			amdgpu_ttm_placement_from_domain(bo, mem->domain);
-			ret = ttm_bo_validate(&bo->tbo, &bo->placement, &ctx);
+			ret = ttm_bo_validate(&bo->tbo, &bo->placement, false, false);
 			if (ret) {
 				pr_err("%s: failed to validate BO\n", __func__);
 				goto unreserve_out;
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
index 6008f5a..2e705f9 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
@@ -436,7 +436,7 @@ int amdgpu_ctx_wait_prev_fence(struct amdgpu_ctx *ctx, unsigned ring_id)
 
 	if (other) {
 		signed long r;
-		r = kcl_fence_wait_timeout(other, false, MAX_SCHEDULE_TIMEOUT);
+		r = dma_fence_wait_timeout(other, false, MAX_SCHEDULE_TIMEOUT);
 		if (r < 0) {
 			DRM_ERROR("Error (%ld) waiting for fence!\n", r);
 			return r;
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
index b0bdd8a..6414b50 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
@@ -855,11 +855,6 @@ static struct drm_driver kms_driver = {
 	.disable_vblank = amdgpu_disable_vblank_kms,
 	.get_vblank_timestamp = drm_calc_vbltimestamp_from_scanoutpos,
 	.get_scanout_position = amdgpu_get_crtc_scanout_position,
-#if defined(CONFIG_DEBUG_FS)
-#endif
-	.irq_preinstall = amdgpu_irq_preinstall,
-	.irq_postinstall = amdgpu_irq_postinstall,
-	.irq_uninstall = amdgpu_irq_uninstall,
 	.irq_handler = amdgpu_irq_handler,
 	.ioctls = amdgpu_ioctls_kms,
 	.gem_free_object_unlocked = amdgpu_gem_object_free,
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c
index 721ee96..9fe616e 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c
@@ -256,7 +256,7 @@ static int amdgpufb_create(struct drm_fb_helper *helper,
 
 	/* setup aperture base/size for vesafb takeover */
 	info->apertures->ranges[0].base = adev->ddev->mode_config.fb_base;
-	info->aperture_size = adev->gmc.aper_size;
+	info->apertures->ranges[0].size = adev->gmc.aper_size;
 
 	/* Use default scratch pixmap (info->pixmap.flags = FB_PIXMAP_SYSTEM) */
 
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
index 417e60f..d018bf4 100755
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
@@ -219,14 +219,6 @@ int amdgpu_bo_create(struct amdgpu_device *adev,
 			    struct sg_table *sg,
 			    struct reservation_object *resv,
 			    struct amdgpu_bo **bo_ptr);
-int amdgpu_bo_create_restricted(struct amdgpu_device *adev,
-				unsigned long size, int byte_align,
-				bool kernel, u32 domain, u64 flags,
-				struct sg_table *sg,
-				struct ttm_placement *placement,
-			        struct reservation_object *resv,
-				uint64_t init_value,
-				struct amdgpu_bo **bo_ptr);
 int amdgpu_bo_create_reserved(struct amdgpu_device *adev,
 			      unsigned long size, int align,
 			      u32 domain, struct amdgpu_bo **bo_ptr,
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
index df25b0b..5aea098 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
@@ -1064,8 +1064,7 @@ static struct ttm_tt *amdgpu_ttm_tt_create(struct ttm_bo_device *bdev,
 	return &gtt->ttm.ttm;
 }
 
-static int amdgpu_ttm_tt_populate(struct ttm_tt *ttm,
-			struct ttm_operation_ctx *ctx)
+static int amdgpu_ttm_tt_populate(struct ttm_tt *ttm)
 {
 	struct amdgpu_device *adev = amdgpu_ttm_adev(ttm->bdev);
 	struct amdgpu_ttm_tt *gtt = (void *)ttm;
@@ -1091,7 +1090,7 @@ static int amdgpu_ttm_tt_populate(struct ttm_tt *ttm,
 		return 0;
 	}
 
-	return ttm_populate_and_map_pages(adev->dev, &gtt->ttm, ctx);
+	return ttm_populate_and_map_pages(adev->dev, &gtt->ttm);
 }
 
 static void amdgpu_ttm_tt_unpopulate(struct ttm_tt *ttm)
diff --git a/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c b/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c
index 320fb93..5af4dab 100644
--- a/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c
@@ -30,8 +30,7 @@
 #include "soc15_common.h"
 #include "psp_v10_0.h"
 
-#include "soc15ip.h"
-#include "raven1/MP/mp_10_0_offset.h"
+#include "mp/mp_10_0_offset.h"
 #include "gc/gc_9_1_offset.h"
 #include "sdma0/sdma0_4_1_offset.h"
 
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h
index a832fc3..b13c660 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h
@@ -266,7 +266,7 @@ int amdgpu_dm_crtc_set_crc_source(struct drm_crtc *crtc, const char *src_name,
 void amdgpu_dm_crtc_handle_crc_irq(struct drm_crtc *crtc);
 #else
 #define amdgpu_dm_crtc_set_crc_source NULL
-static inline amdgpu_dm_crtc_handle_crc_irq(struct drm_crtc *crtc) {}
+static inline void amdgpu_dm_crtc_handle_crc_irq(struct drm_crtc *crtc) {}
 #endif
 
 extern const struct drm_encoder_helper_funcs amdgpu_dm_encoder_helper_funcs;
diff --git a/drivers/gpu/drm/amd/lib/Makefile b/drivers/gpu/drm/amd/lib/Makefile
index 35a44c2..2b95bf7 100644
--- a/drivers/gpu/drm/amd/lib/Makefile
+++ b/drivers/gpu/drm/amd/lib/Makefile
@@ -16,6 +16,3 @@ endif
 ccflags-y := -I$(src)/../include
 
 obj-$(CONFIG_CHASH) += $(CHASH_NAME).o
-
-LIB_FULL_PATH = $(src)
-include $(LIB_FULL_PATH)/backport/Makefile
diff --git a/drivers/gpu/drm/amd/lib/backport/Makefile b/drivers/gpu/drm/amd/lib/backport/Makefile
deleted file mode 100644
index e214316..0000000
--- a/drivers/gpu/drm/amd/lib/backport/Makefile
+++ /dev/null
@@ -1,5 +0,0 @@
-LINUXINCLUDE := $(DKMS_INCLUDE_PREFIX) $(LINUXINCLUDE)
-
-ccflags-y += \
-	-I$(LIB_FULL_PATH) \
-	-include backport/backport.h
diff --git a/drivers/gpu/drm/amd/lib/backport/backport.h b/drivers/gpu/drm/amd/lib/backport/backport.h
deleted file mode 100644
index 2c52212..0000000
--- a/drivers/gpu/drm/amd/lib/backport/backport.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef LIB_BACKPORT_H
-#define LIB_BACKPORT_H
-
-#include <linux/version.h>
-
-#endif
diff --git a/drivers/gpu/drm/scheduler/gpu_scheduler.c b/drivers/gpu/drm/scheduler/gpu_scheduler.c
index 2c18996..0d95888 100644
--- a/drivers/gpu/drm/scheduler/gpu_scheduler.c
+++ b/drivers/gpu/drm/scheduler/gpu_scheduler.c
@@ -461,7 +461,7 @@ void drm_sched_hw_job_reset(struct drm_gpu_scheduler *sched, struct drm_sched_jo
 {
 	struct drm_sched_job *s_job;
 	struct drm_sched_entity *entity, *tmp;
-	int i;;
+	int i;
 
 	spin_lock(&sched->job_list_lock);
 	list_for_each_entry_reverse(s_job, &sched->ring_mirror_list, node) {
diff --git a/include/drm/drm_modeset_helper_vtables.h b/include/drm/drm_modeset_helper_vtables.h
index c55cf3f..54659d3 100644
--- a/include/drm/drm_modeset_helper_vtables.h
+++ b/include/drm/drm_modeset_helper_vtables.h
@@ -266,6 +266,22 @@ struct drm_crtc_helper_funcs {
 				    struct drm_framebuffer *fb, int x, int y,
 				    enum mode_set_atomic);
 
+        /**
+         * @load_lut:
+         *
+         * Load a LUT prepared with the &drm_fb_helper_funcs.gamma_set vfunc.
+         *
+         * This callback is optional and is only used by the fbdev emulation
+         * helpers.
+         *
+         * FIXME:
+         *
+         * This callback is functionally redundant with the core gamma table
+         * support and simply exists because the fbdev hasn't yet been
+         * refactored to use the core gamma table interfaces.
+         */
+        void (*load_lut)(struct drm_crtc *crtc);
+
 	/**
 	 * @disable:
 	 *
diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h
index c9aed87..28b1a44 100644
--- a/include/uapi/drm/amdgpu_drm.h
+++ b/include/uapi/drm/amdgpu_drm.h
@@ -730,8 +730,13 @@ struct drm_amdgpu_cs_chunk_data {
 	#define AMDGPU_INFO_SENSOR_VDDNB		0x6
 	/* Subquery id: Query graphics voltage */
 	#define AMDGPU_INFO_SENSOR_VDDGFX		0x7
+        /* Subquery id: Query GPU stable pstate shader clock */
+        #define AMDGPU_INFO_SENSOR_STABLE_PSTATE_GFX_SCLK               0x8
+        /* Subquery id: Query GPU stable pstate memory clock */
+        #define AMDGPU_INFO_SENSOR_STABLE_PSTATE_GFX_MCLK               0x9
 /* Number of VRAM page faults on CPU access. */
 #define AMDGPU_INFO_NUM_VRAM_CPU_PAGE_FAULTS	0x1E
+#define AMDGPU_INFO_VRAM_LOST_COUNTER           0x1F
 
 /* Hybrid Stack Specific Defs*/
 /* gpu capability */
-- 
2.7.4