aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3430-drm-amdkfd-Add-AQL-Queue-Memory-flag-on-topology.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3430-drm-amdkfd-Add-AQL-Queue-Memory-flag-on-topology.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3430-drm-amdkfd-Add-AQL-Queue-Memory-flag-on-topology.patch47
1 files changed, 47 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3430-drm-amdkfd-Add-AQL-Queue-Memory-flag-on-topology.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3430-drm-amdkfd-Add-AQL-Queue-Memory-flag-on-topology.patch
new file mode 100644
index 00000000..c00add49
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3430-drm-amdkfd-Add-AQL-Queue-Memory-flag-on-topology.patch
@@ -0,0 +1,47 @@
+From df5044c792e25bb6da0162b7d92eb0b5b31b3b4a Mon Sep 17 00:00:00 2001
+From: Ben Goz <ben.goz@amd.com>
+Date: Fri, 8 Dec 2017 23:09:02 -0500
+Subject: [PATCH 3430/4131] drm/amdkfd: Add AQL Queue Memory flag on topology
+
+This is needed for enabling a user-mode workaround for an AQL queue
+wrapping HW bug on Tonga.
+
+Signed-off-by: Ben Goz <ben.goz@amd.com>
+Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
+Acked-by: Oded Gabbay <oded.gabbay@gmail.com>
+Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
+---
+ drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 4 ++++
+ drivers/gpu/drm/amd/amdkfd/kfd_topology.h | 1 +
+ 2 files changed, 5 insertions(+)
+
+diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c
+index 80bc71d..e7daf2c 100644
+--- a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c
++++ b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c
+@@ -455,6 +455,10 @@ static ssize_t node_show(struct kobject *kobj, struct attribute *attr,
+ HSA_CAP_WATCH_POINTS_TOTALBITS_MASK);
+ }
+
++ if (dev->gpu->device_info->asic_family == CHIP_TONGA)
++ dev->node_props.capability |=
++ HSA_CAP_AQL_QUEUE_DOUBLE_MAP;
++
+ sysfs_show_32bit_prop(buffer, "max_engine_clk_fcompute",
+ dev->node_props.max_engine_clk_fcompute);
+
+diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_topology.h b/drivers/gpu/drm/amd/amdkfd/kfd_topology.h
+index b9f3142..53fca1f 100644
+--- a/drivers/gpu/drm/amd/amdkfd/kfd_topology.h
++++ b/drivers/gpu/drm/amd/amdkfd/kfd_topology.h
+@@ -45,6 +45,7 @@
+
+ #define HSA_CAP_DOORBELL_TYPE_PRE_1_0 0x0
+ #define HSA_CAP_DOORBELL_TYPE_1_0 0x1
++#define HSA_CAP_AQL_QUEUE_DOUBLE_MAP 0x00004000
+
+ struct kfd_node_properties {
+ uint32_t cpu_cores_count;
+--
+2.7.4
+