aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.14.71/1239-drm-amdkfd-Initialize-packet-manager-for-non-HWS.patch
blob: fa02ce9d15f573684fe16dff7cc65f143f81e508 (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
From d5fe08ef3ab719a3e9a35470e348bf9e394c963a Mon Sep 17 00:00:00 2001
From: Kent Russell <kent.russell@amd.com>
Date: Fri, 24 Mar 2017 07:52:15 -0400
Subject: [PATCH 1239/4131] drm/amdkfd: Initialize packet manager for non-HWS

We use the packet manager to create packets, even in SW-scheduled
situations. Initialize it when we aren't using HWS, and destroy it when
we're done.

BUG: KFD-314

Change-Id: Iac778cedc2ebf3f5285d6012b3682ddba0d3eaa5
Signed-off-by: Kent Russell <kent.russell@amd.com>
---
 drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
index fe99477..1e28bb7 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
@@ -787,11 +787,12 @@ static void uninitialize_nocpsch(struct device_queue_manager *dqm)
 static int start_nocpsch(struct device_queue_manager *dqm)
 {
 	init_interrupts(dqm);
-	return 0;
+	return pm_init(&dqm->packets, dqm, dqm->dev->mec_fw_version);
 }
 
 static int stop_nocpsch(struct device_queue_manager *dqm)
 {
+	pm_uninit(&dqm->packets);
 	return 0;
 }
 
-- 
2.7.4