diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.14.71/1647-drm-amdkfd-Remove-firmware-version-check-for-multi-p.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.14.71/1647-drm-amdkfd-Remove-firmware-version-check-for-multi-p.patch | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.14.71/1647-drm-amdkfd-Remove-firmware-version-check-for-multi-p.patch b/common/recipes-kernel/linux/linux-yocto-4.14.71/1647-drm-amdkfd-Remove-firmware-version-check-for-multi-p.patch new file mode 100644 index 00000000..078fcd9b --- /dev/null +++ b/common/recipes-kernel/linux/linux-yocto-4.14.71/1647-drm-amdkfd-Remove-firmware-version-check-for-multi-p.patch @@ -0,0 +1,52 @@ +From d9ccd8583fa787f57b9b8a9eb58e2b3c2eb0e508 Mon Sep 17 00:00:00 2001 +From: Jay Cornwall <Jay.Cornwall@amd.com> +Date: Wed, 29 Mar 2017 18:15:30 -0500 +Subject: [PATCH 1647/4131] drm/amdkfd: Remove firmware version check for + multi-process HWS + +The firmware version check was incorrect for different GFXIP variants, +which use unrelated versioning schemes. Gfx9 ASICs failed this check +although their firmware supports multi-process scheduling. + +Remove firmware version check since MEC microcode without this feature +has been deprecated for some time. + +Change-Id: I93b1c8072d0838a8d7c7de1bfc0ff030b2b6afbd +Signed-off-by: Jay Cornwall <Jay.Cornwall@amd.com> +--- + drivers/gpu/drm/amd/amdkfd/kfd_device.c | 5 +---- + drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 1 - + 2 files changed, 1 insertion(+), 5 deletions(-) + +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device.c b/drivers/gpu/drm/amd/amdkfd/kfd_device.c +index 93ac064..acb9c2e 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_device.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_device.c +@@ -477,11 +477,8 @@ bool kgd2kfd_device_init(struct kfd_dev *kfd, + - kfd->vm_info.first_vmid_kfd + 1; + kfd->vm_info.vmid_num_kfd = vmid_num_kfd; + +- /* If MEC firmware is too old, turn off hws multiple process mapping */ +- if (kfd->mec_fw_version < KFD_MULTI_PROC_MAPPING_HWS_SUPPORT) +- kfd->max_proc_per_quantum = 0; + /* Verify module parameters regarding mapped process number*/ +- else if ((hws_max_conc_proc < 0) ++ if ((hws_max_conc_proc < 0) + || (hws_max_conc_proc > vmid_num_kfd)) { + dev_err(kfd_device, + "hws_max_conc_proc (%d) must be between 0 and %d, use %d instead\n", +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h +index 5f9127c..2d780ec 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h +@@ -1061,7 +1061,6 @@ int dbgdev_wave_reset_wavefronts(struct kfd_dev *dev, struct kfd_process *p); + + #define KFD_SCRATCH_CZ_FW_VER 600 + #define KFD_SCRATCH_KV_FW_VER 413 +-#define KFD_MULTI_PROC_MAPPING_HWS_SUPPORT 600 + #define KFD_CWSR_CZ_FW_VER 625 + + /* PeerDirect support */ +-- +2.7.4 + |