aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.14.71/1241-drm-amdkfd-Fix-Gfx9-AQL-MQD-initialization.patch
blob: 8c54470a9b328b42dff290daccf5cf09708c9c76 (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
From 5886c4dbdde92191a881ea36d3d12dd8bc32d8af Mon Sep 17 00:00:00 2001
From: Jay Cornwall <Jay.Cornwall@amd.com>
Date: Wed, 22 Feb 2017 11:04:50 -0600
Subject: [PATCH 1241/4131] drm/amdkfd: Fix Gfx9 AQL MQD initialization

CP_HQD_AQL_CONTROL.CONTROL0_EN should not be set in the initial
MQD state. Doing so can cause intermittent failures in barrier
packet processing.

Clear CP_HQD_AQL_CONTROL.CONTROL0_EN in the initial MQD state.

Signed-off-by: Jay Cornwall <Jay.Cornwall@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
---
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c
index 3caeb6e..c80691e 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c
@@ -148,8 +148,7 @@ static int init_mqd(struct mqd_manager *mm, void **mqd,
 
 	if (q->format == KFD_QUEUE_FORMAT_AQL) {
 		m->cp_hqd_aql_control =
-			1 << CP_HQD_AQL_CONTROL__CONTROL0__SHIFT |
-			1 << CP_HQD_AQL_CONTROL__CONTROL0_EN__SHIFT;
+			1 << CP_HQD_AQL_CONTROL__CONTROL0__SHIFT;
 	}
 
 	if (q->tba_addr) {
-- 
2.7.4