aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0954-drm-amd-amdgpu-Change-vram-debugfs-to-NO_KIQ-for-VM-.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0954-drm-amd-amdgpu-Change-vram-debugfs-to-NO_KIQ-for-VM-.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0954-drm-amd-amdgpu-Change-vram-debugfs-to-NO_KIQ-for-VM-.patch45
1 files changed, 45 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0954-drm-amd-amdgpu-Change-vram-debugfs-to-NO_KIQ-for-VM-.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0954-drm-amd-amdgpu-Change-vram-debugfs-to-NO_KIQ-for-VM-.patch
new file mode 100644
index 00000000..37ab6154
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0954-drm-amd-amdgpu-Change-vram-debugfs-to-NO_KIQ-for-VM-.patch
@@ -0,0 +1,45 @@
+From d43d300957a14ef468197c515f53c667957187c3 Mon Sep 17 00:00:00 2001
+From: Tom St Denis <tom.stdenis@amd.com>
+Date: Wed, 13 Sep 2017 12:35:15 -0400
+Subject: [PATCH 0954/4131] drm/amd/amdgpu: Change vram debugfs to NO_KIQ for
+ VM environments
+
+Signed-off-by: Tom St Denis <tom.stdenis@amd.com>
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
+index 04bc526..5427cac 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
+@@ -1933,9 +1933,9 @@ static ssize_t amdgpu_ttm_vram_read(struct file *f, char __user *buf,
+ return result;
+
+ spin_lock_irqsave(&adev->mmio_idx_lock, flags);
+- WREG32(mmMM_INDEX, ((uint32_t)*pos) | 0x80000000);
+- WREG32(mmMM_INDEX_HI, *pos >> 31);
+- value = RREG32(mmMM_DATA);
++ WREG32_NO_KIQ(mmMM_INDEX, ((uint32_t)*pos) | 0x80000000);
++ WREG32_NO_KIQ(mmMM_INDEX_HI, *pos >> 31);
++ value = RREG32_NO_KIQ(mmMM_DATA);
+ spin_unlock_irqrestore(&adev->mmio_idx_lock, flags);
+
+ r = put_user(value, (uint32_t *)buf);
+@@ -1976,9 +1976,9 @@ static ssize_t amdgpu_ttm_vram_write(struct file *f, const char __user *buf,
+ return r;
+
+ spin_lock_irqsave(&adev->mmio_idx_lock, flags);
+- WREG32(mmMM_INDEX, ((uint32_t)*pos) | 0x80000000);
+- WREG32(mmMM_INDEX_HI, *pos >> 31);
+- WREG32(mmMM_DATA, value);
++ WREG32_NO_KIQ(mmMM_INDEX, ((uint32_t)*pos) | 0x80000000);
++ WREG32_NO_KIQ(mmMM_INDEX_HI, *pos >> 31);
++ WREG32_NO_KIQ(mmMM_DATA, value);
+ spin_unlock_irqrestore(&adev->mmio_idx_lock, flags);
+
+ result += 4;
+--
+2.7.4
+