[PATCH] drm/radeon: remove init of CIK VMIDs 8-16 for amdkfd
Christian König
ckoenig.leichtzumerken at gmail.com
Wed Nov 29 15:27:17 UTC 2017
Am 29.11.2017 um 16:23 schrieb Oded Gabbay:
> 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.
>
> This bug was found by Michel Dänzer.
>
> Signed-off-by: Oded Gabbay <oded.gabbay at gmail.com>
Acked-by: Christian König <christian.koenig at amd.com>
> ---
> drivers/gpu/drm/radeon/cik.c | 24 ------------------------
> 1 file changed, 24 deletions(-)
>
> diff --git a/drivers/gpu/drm/radeon/cik.c b/drivers/gpu/drm/radeon/cik.c
> index 898f9a0..a651191 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)
> 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),
More information about the amd-gfx
mailing list