aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOded Gabbay <oded.gabbay@gmail.com>2017-11-29 11:26:56 -0500
committerAlex Deucher <alexander.deucher@amd.com>2017-11-29 14:43:20 -0500
commit7fdf165a52505392eb059902b0df55e79a45c25f (patch)
tree1d0c6410857cbf7024276bca72e24c16b9a46017
parent1569d651f152870663fabd8f1c80af353f967ad5 (diff)
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: f4fa88ab28ab ("drm/radeon: deprecate and remove KFD interface") Rported-by: Michel Dänzer <michel.daenzer@amd.com> Acked-by: Christian König <christian.koenig@amd.com> Reviewed-and-Tested-by: Michel Dänzer <michel.daenzer@amd.com> Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--drivers/gpu/drm/radeon/cik.c24
1 files changed, 0 insertions, 24 deletions
diff --git a/drivers/gpu/drm/radeon/cik.c b/drivers/gpu/drm/radeon/cik.c
index 898f9a078830..a6511918f632 100644
--- a/drivers/gpu/drm/radeon/cik.c
+++ b/drivers/gpu/drm/radeon/cik.c
@@ -5451,28 +5451,6 @@ void cik_pcie_gart_tlb_flush(struct radeon_device *rdev)
5451 WREG32(VM_INVALIDATE_REQUEST, 0x1); 5451 WREG32(VM_INVALIDATE_REQUEST, 0x1);
5452} 5452}
5453 5453
5454static void cik_pcie_init_compute_vmid(struct radeon_device *rdev)
5455{
5456 int i;
5457 uint32_t sh_mem_bases, sh_mem_config;
5458
5459 sh_mem_bases = 0x6000 | 0x6000 << 16;
5460 sh_mem_config = ALIGNMENT_MODE(SH_MEM_ALIGNMENT_MODE_UNALIGNED);
5461 sh_mem_config |= DEFAULT_MTYPE(MTYPE_NONCACHED);
5462
5463 mutex_lock(&rdev->srbm_mutex);
5464 for (i = 8; i < 16; i++) {
5465 cik_srbm_select(rdev, 0, 0, 0, i);
5466 /* CP and shaders */
5467 WREG32(SH_MEM_CONFIG, sh_mem_config);
5468 WREG32(SH_MEM_APE1_BASE, 1);
5469 WREG32(SH_MEM_APE1_LIMIT, 0);
5470 WREG32(SH_MEM_BASES, sh_mem_bases);
5471 }
5472 cik_srbm_select(rdev, 0, 0, 0, 0);
5473 mutex_unlock(&rdev->srbm_mutex);
5474}
5475
5476/** 5454/**
5477 * cik_pcie_gart_enable - gart enable 5455 * cik_pcie_gart_enable - gart enable
5478 * 5456 *
@@ -5586,8 +5564,6 @@ static int cik_pcie_gart_enable(struct radeon_device *rdev)
5586 cik_srbm_select(rdev, 0, 0, 0, 0); 5564 cik_srbm_select(rdev, 0, 0, 0, 0);
5587 mutex_unlock(&rdev->srbm_mutex); 5565 mutex_unlock(&rdev->srbm_mutex);
5588 5566
5589 cik_pcie_init_compute_vmid(rdev);
5590
5591 cik_pcie_gart_tlb_flush(rdev); 5567 cik_pcie_gart_tlb_flush(rdev);
5592 DRM_INFO("PCIE GART of %uM enabled (table at 0x%016llX).\n", 5568 DRM_INFO("PCIE GART of %uM enabled (table at 0x%016llX).\n",
5593 (unsigned)(rdev->mc.gtt_size >> 20), 5569 (unsigned)(rdev->mc.gtt_size >> 20),