aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/0239-drm-amdkcl-4.16-fix-for-devm_memremap_pages-change.patch
blob: f10bd6a064a4ef4a4b68a32ec04c75324224cde1 (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
From 705dd0b094d7c24705701212f30ec17372c703be Mon Sep 17 00:00:00 2001
From: Qiang Yu <Qiang.Yu@amd.com>
Date: Wed, 26 Sep 2018 18:34:04 +0800
Subject: [PATCH 0239/2940] drm/amdkcl: [4.16] fix for devm_memremap_pages
 change

Should be merged to
126886d3439de4ee754d6e809545d99fb1e78959
drm/amdgpu: [hybrid] add SSG support
when next rebase.

Change-Id: I43f90831215ee3e9fe2984c6caef23d5f4c81b1d
Signed-off-by: Qiang Yu <Qiang.Yu@amd.com>
Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com>
Signed-off-by: Kalyan Alle <kalyan.alle@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu.h     | 1 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 7 ++++++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
index cf3d422948b6..b215b8b30f22 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
@@ -828,6 +828,7 @@ struct amdgpu_ssg {
 #ifdef CONFIG_ENABLE_SSG
 	struct percpu_ref	ref;
 	struct completion	cmp;
+	struct dev_pagemap      pgmap;
 #endif
 };
 
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
index 0e515a94940e..b13aa1bdf91c 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
@@ -1886,7 +1886,12 @@ static int amdgpu_ssg_init(struct amdgpu_device *adev)
 	if (rc)
 		return rc;
 
-	addr = devm_memremap_pages(adev->dev, &res, &adev->ssg.ref, NULL);
+	adev->ssg.pgmap.res.start = res.start;
+	adev->ssg.pgmap.res.end = res.end;
+	adev->ssg.pgmap.res.name = res.name;
+	adev->ssg.pgmap.ref = &adev->ssg.ref;
+	adev->ssg.pgmap.altmap_valid = false;
+	addr = devm_memremap_pages(adev->dev, &adev->ssg.pgmap);
 	if (IS_ERR(addr)) {
 		percpu_ref_exit(&adev->ssg.ref);
 		return PTR_ERR(addr);
-- 
2.17.1