From: Mukul Joshi <[email protected]>

There is no need to partition VMID space on GFX 12.1 when
operating in CPX mode as SDMA is not sharing MMHUB on GFX 12.1.

Signed-off-by: Mukul Joshi <[email protected]>
Reviewed-by: Alex Sierra <[email protected]>
Reviewed-by: Michael Chen <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
---
 drivers/gpu/drm/amd/amdkfd/kfd_device.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device.c 
b/drivers/gpu/drm/amd/amdkfd/kfd_device.c
index b91843b2af6a6..6d0b370b1644b 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_device.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_device.c
@@ -878,7 +878,8 @@ bool kgd2kfd_device_init(struct kfd_dev *kfd,
                }
 
                if (partition_mode == AMDGPU_CPX_PARTITION_MODE &&
-                   kfd->num_nodes != 1) {
+                   kfd->num_nodes != 1 &&
+                   (KFD_GC_VERSION(kfd) != IP_VERSION(12, 1, 0))) {
                        /* For multi-partition capable GPUs and CPX mode, first
                         * XCD gets VMID range 4-9 and second XCD gets VMID
                         * range 10-15.
@@ -899,6 +900,7 @@ bool kgd2kfd_device_init(struct kfd_dev *kfd,
                        node->compute_vmid_bitmap =
                                gpu_resources->compute_vmid_bitmap;
                }
+
                node->max_proc_per_quantum = max_proc_per_quantum;
                atomic_set(&node->sram_ecc_flag, 0);
 
-- 
2.52.0

Reply via email to