Commit d839a158 authored by Graham Sider's avatar Graham Sider Committed by Alex Deucher
Browse files

drm/amdgpu: Correct dGPU MTYPE settings for gfx943



Revert temporary dGPU VRAM MTYPE setting and align with expected
coherency protocol.

Signed-off-by: default avatarGraham Sider <Graham.Sider@amd.com>
Reviewed-by: default avatarFelix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 30b52995
Loading
Loading
Loading
Loading
+5 −10
Original line number Diff line number Diff line
@@ -1238,17 +1238,12 @@ static void gmc_v9_0_get_coherence_flags(struct amdgpu_device *adev,
			mtype = MTYPE_RW;
		} else {
			/* dGPU */
			/*
			if ((mem->alloc_flags & KFD_IOC_ALLOC_MEM_FLAGS_VRAM) &&
			    bo_adev == adev)
				mapping_flags |= AMDGPU_VM_MTYPE_RW;
			else
			*/
			/* Temporarily comment out above lines and use MTYPE_NC
			 * on both VRAM and system memory access until
			 * MTYPE_RW can properly work on VRAM access
			 */
			if (is_vram && bo_adev == adev)
				mtype = MTYPE_RW;
			else if (is_vram)
				mtype = MTYPE_NC;
			else
				mtype = MTYPE_UC;
		}

		break;
+2 −6
Original line number Diff line number Diff line
@@ -1198,13 +1198,9 @@ svm_range_get_pte_flags(struct kfd_node *node,
		if (uncached) {
			mapping_flags |= AMDGPU_VM_MTYPE_UC;
		} else if (domain == SVM_RANGE_VRAM_DOMAIN) {
			/* local HBM region close to partition with a workaround
			 * for Endpoint systems.
			 */
			/* local HBM region close to partition */
			if (bo_node == node)
				mapping_flags |=
					(node->adev->flags & AMD_IS_APU) ?
					AMDGPU_VM_MTYPE_RW : AMDGPU_VM_MTYPE_NC;
				mapping_flags |= AMDGPU_VM_MTYPE_RW;
			/* local HBM region far from partition or remote XGMI GPU */
			else if (svm_nodes_in_same_hive(bo_node, node))
				mapping_flags |= AMDGPU_VM_MTYPE_NC;