Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7fdf165a authored by Oded Gabbay's avatar Oded Gabbay Committed by Alex Deucher
Browse files

drm/radeon: remove init of CIK VMIDs 8-16 for amdkfd



VMIDs 8-16 in Kaveri were reserved for use by the amdkfd driver.
Because we removed amdkfd support from radeon, those VMIDs are now
used by radeon and are initialized by radeon.

This patch removes the function that initialized those VMIDs for amdkfd
use.
This initialization overridden the radeon initialization and caused GPU
faults and GUI crashed.

Fixes: f4fa88ab ("drm/radeon: deprecate and remove KFD interface")
Rported-by: default avatarMichel Dänzer <michel.daenzer@amd.com>
Acked-by: default avatarChristian König <christian.koenig@amd.com>
Reviewed-and-Tested-by: default avatarMichel Dänzer <michel.daenzer@amd.com>
Signed-off-by: default avatarOded Gabbay <oded.gabbay@gmail.com>
Signed-off-by: default avatarMichel Dänzer <michel.daenzer@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 1569d651
Loading
Loading
Loading
Loading
+0 −24
Original line number Diff line number Diff line
@@ -5451,28 +5451,6 @@ void cik_pcie_gart_tlb_flush(struct radeon_device *rdev)
	WREG32(VM_INVALIDATE_REQUEST, 0x1);
}

static void cik_pcie_init_compute_vmid(struct radeon_device *rdev)
{
	int i;
	uint32_t sh_mem_bases, sh_mem_config;

	sh_mem_bases = 0x6000 | 0x6000 << 16;
	sh_mem_config = ALIGNMENT_MODE(SH_MEM_ALIGNMENT_MODE_UNALIGNED);
	sh_mem_config |= DEFAULT_MTYPE(MTYPE_NONCACHED);

	mutex_lock(&rdev->srbm_mutex);
	for (i = 8; i < 16; i++) {
		cik_srbm_select(rdev, 0, 0, 0, i);
		/* CP and shaders */
		WREG32(SH_MEM_CONFIG, sh_mem_config);
		WREG32(SH_MEM_APE1_BASE, 1);
		WREG32(SH_MEM_APE1_LIMIT, 0);
		WREG32(SH_MEM_BASES, sh_mem_bases);
	}
	cik_srbm_select(rdev, 0, 0, 0, 0);
	mutex_unlock(&rdev->srbm_mutex);
}

/**
 * cik_pcie_gart_enable - gart enable
 *
@@ -5586,8 +5564,6 @@ static int cik_pcie_gart_enable(struct radeon_device *rdev)
	cik_srbm_select(rdev, 0, 0, 0, 0);
	mutex_unlock(&rdev->srbm_mutex);

	cik_pcie_init_compute_vmid(rdev);

	cik_pcie_gart_tlb_flush(rdev);
	DRM_INFO("PCIE GART of %uM enabled (table at 0x%016llX).\n",
		 (unsigned)(rdev->mc.gtt_size >> 20),