aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.14.71/1722-drm-amdgpu-Fix-address-mask-in-get_local_mem_info.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.14.71/1722-drm-amdgpu-Fix-address-mask-in-get_local_mem_info.patch')
-rw-r--r--common/recipes-kernel/linux/linux-yocto-4.14.71/1722-drm-amdgpu-Fix-address-mask-in-get_local_mem_info.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.14.71/1722-drm-amdgpu-Fix-address-mask-in-get_local_mem_info.patch b/common/recipes-kernel/linux/linux-yocto-4.14.71/1722-drm-amdgpu-Fix-address-mask-in-get_local_mem_info.patch
new file mode 100644
index 00000000..9df4d98e
--- /dev/null
+++ b/common/recipes-kernel/linux/linux-yocto-4.14.71/1722-drm-amdgpu-Fix-address-mask-in-get_local_mem_info.patch
@@ -0,0 +1,32 @@
+From 8e873e1c3080ed8485da4fee83136effcf95bca0 Mon Sep 17 00:00:00 2001
+From: Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com>
+Date: Thu, 15 Jun 2017 15:37:34 -0400
+Subject: [PATCH 1722/4131] drm/amdgpu: Fix address mask in get_local_mem_info
+
+Use ASIC specific dma_mask instead of hard coding address mask.
+
+Change-Id: I2bbb54c685cefe05ca48794d0e6b3229c313db99
+Signed-off-by: Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
+index 101c25d..b892044 100755
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
+@@ -343,8 +343,10 @@ void get_local_mem_info(struct kgd_dev *kgd,
+ resource_size_t aper_limit;
+ struct amdgpu_device *adev = (struct amdgpu_device *)kgd;
+
+- address_mask = ~((1UL << 40) - 1);
++ address_mask = adev->dev->dma_mask ? ~*adev->dev->dma_mask :
++ ~((1ULL << 32) - 1);
+ aper_limit = adev->mc.aper_base + adev->mc.aper_size;
++
+ memset(mem_info, 0, sizeof(*mem_info));
+ if (!(adev->mc.aper_base & address_mask ||
+ aper_limit & address_mask)) {
+--
+2.7.4
+