Commit 4abf0b0b authored by David Yat Sin's avatar David Yat Sin Committed by Alex Deucher
Browse files

drm/amdgpu: Change extended-scope MTYPE on GC 9.4.3



Change local memory type to MTYPE_UC on revision id 0

Signed-off-by: default avatarDavid Yat Sin <David.YatSin@amd.com>
Reviewed-by: default avatarFelix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 61e0a982
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -1180,7 +1180,10 @@ static void gmc_v9_0_get_coherence_flags(struct amdgpu_device *adev,
		if (uncached) {
			mtype = MTYPE_UC;
		} else if (ext_coherent) {
			if (adev->rev_id)
				mtype = is_local ? MTYPE_CC : MTYPE_UC;
			else
				mtype = MTYPE_UC;
		} else if (adev->flags & AMD_IS_APU) {
			mtype = is_local ? mtype_local : MTYPE_NC;
		} else {
@@ -1301,7 +1304,7 @@ static void gmc_v9_0_override_vm_pte_flags(struct amdgpu_device *adev,

			*flags = (*flags & ~AMDGPU_PTE_MTYPE_VG10_MASK) |
				 AMDGPU_PTE_MTYPE_VG10(mtype_local);
		} else {
		} else if (adev->rev_id) {
			/* MTYPE_UC case */
			*flags = (*flags & ~AMDGPU_PTE_MTYPE_VG10_MASK) |
				 AMDGPU_PTE_MTYPE_VG10(MTYPE_CC);
+5 −3
Original line number Diff line number Diff line
@@ -1255,9 +1255,11 @@ svm_range_get_pte_flags(struct kfd_node *node,
		}
		break;
	case IP_VERSION(9, 4, 3):
		if (ext_coherent)
			mtype_local = node->adev->rev_id ? AMDGPU_VM_MTYPE_CC : AMDGPU_VM_MTYPE_UC;
		else
			mtype_local = amdgpu_mtype_local == 1 ? AMDGPU_VM_MTYPE_NC :
			      (amdgpu_mtype_local == 2 || ext_coherent ?
					AMDGPU_VM_MTYPE_CC : AMDGPU_VM_MTYPE_RW);
				amdgpu_mtype_local == 2 ? AMDGPU_VM_MTYPE_CC : AMDGPU_VM_MTYPE_RW;
		snoop = true;
		if (uncached) {
			mapping_flags |= AMDGPU_VM_MTYPE_UC;