diff options
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/1492-drm-amdgpu-Implement-get_tile_config-in-amdgpu.patch')
-rw-r--r-- | meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/1492-drm-amdgpu-Implement-get_tile_config-in-amdgpu.patch | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/1492-drm-amdgpu-Implement-get_tile_config-in-amdgpu.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/1492-drm-amdgpu-Implement-get_tile_config-in-amdgpu.patch deleted file mode 100644 index 585b6b8c..00000000 --- a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/1492-drm-amdgpu-Implement-get_tile_config-in-amdgpu.patch +++ /dev/null @@ -1,108 +0,0 @@ -From fcc6cbb263c92ff4cd63e84feb7da72fc3ccc8cd Mon Sep 17 00:00:00 2001 -From: Yong Zhao <yong.zhao@amd.com> -Date: Wed, 24 Aug 2016 12:48:40 -0400 -Subject: [PATCH 1492/4131] drm/amdgpu: Implement get_tile_config() in amdgpu - -Change-Id: Ifed629801efca89efa7da8b21128893678aa68f1 -Signed-off-by: Yong Zhao <yong.zhao@amd.com> ---- - drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 29 ++++++++++++++++++++++- - drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 28 +++++++++++++++++++++- - 2 files changed, 55 insertions(+), 2 deletions(-) - -diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c -index 65b5e2b..9948b37 100644 ---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c -+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c -@@ -147,6 +147,32 @@ static int write_config_static_mem(struct kgd_dev *kgd, bool swizzle_enable, - static void set_vm_context_page_table_base(struct kgd_dev *kgd, uint32_t vmid, - uint32_t page_table_base); - -+/* Because of REG_GET_FIELD() being used, we put this function in the -+ * asic specific file. -+ */ -+static int amdgpu_amdkfd_get_tile_config(struct kgd_dev *kgd, -+ struct tile_config *config) -+{ -+ struct amdgpu_device *adev = (struct amdgpu_device *)kgd; -+ -+ config->gb_addr_config = adev->gfx.config.gb_addr_config; -+ config->num_banks = REG_GET_FIELD(adev->gfx.config.mc_arb_ramcfg, -+ MC_ARB_RAMCFG, NOOFBANK); -+ config->num_ranks = REG_GET_FIELD(adev->gfx.config.mc_arb_ramcfg, -+ MC_ARB_RAMCFG, NOOFRANKS); -+ -+ config->tile_config_ptr = adev->gfx.config.tile_mode_array; -+ config->num_tile_configs = -+ ARRAY_SIZE(adev->gfx.config.tile_mode_array); -+ config->macro_tile_config_ptr = -+ adev->gfx.config.macrotile_mode_array; -+ config->num_macro_tile_configs = -+ ARRAY_SIZE(adev->gfx.config.macrotile_mode_array); -+ -+ -+ return 0; -+} -+ - static const struct kfd2kgd_calls kfd2kgd = { - .init_gtt_mem_allocation = alloc_gtt_mem, - .free_gtt_mem = free_gtt_mem, -@@ -198,7 +224,8 @@ static const struct kfd2kgd_calls kfd2kgd = { - .get_dmabuf_info = amdgpu_amdkfd_get_dmabuf_info, - .import_dmabuf = amdgpu_amdkfd_gpuvm_import_dmabuf, - .get_vm_fault_info = amdgpu_amdkfd_gpuvm_get_vm_fault_info, -- .submit_ib = amdgpu_amdkfd_submit_ib -+ .submit_ib = amdgpu_amdkfd_submit_ib, -+ .get_tile_config = amdgpu_amdkfd_get_tile_config, - }; - - struct kfd2kgd_calls *amdgpu_amdkfd_gfx_7_get_functions() -diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c -index af2fcec..56a88ef 100644 ---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c -+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c -@@ -127,6 +127,31 @@ static int write_config_static_mem(struct kgd_dev *kgd, bool swizzle_enable, - static void set_vm_context_page_table_base(struct kgd_dev *kgd, uint32_t vmid, - uint32_t page_table_base); - -+/* Because of REG_GET_FIELD() being used, we put this function in the -+ * asic specific file. -+ */ -+static int amdgpu_amdkfd_get_tile_config(struct kgd_dev *kgd, -+ struct tile_config *config) -+{ -+ struct amdgpu_device *adev = (struct amdgpu_device *)kgd; -+ -+ config->gb_addr_config = adev->gfx.config.gb_addr_config; -+ config->num_banks = REG_GET_FIELD(adev->gfx.config.mc_arb_ramcfg, -+ MC_ARB_RAMCFG, NOOFBANK); -+ config->num_ranks = REG_GET_FIELD(adev->gfx.config.mc_arb_ramcfg, -+ MC_ARB_RAMCFG, NOOFRANKS); -+ -+ config->tile_config_ptr = adev->gfx.config.tile_mode_array; -+ config->num_tile_configs = -+ ARRAY_SIZE(adev->gfx.config.tile_mode_array); -+ config->macro_tile_config_ptr = -+ adev->gfx.config.macrotile_mode_array; -+ config->num_macro_tile_configs = -+ ARRAY_SIZE(adev->gfx.config.macrotile_mode_array); -+ -+ return 0; -+} -+ - static const struct kfd2kgd_calls kfd2kgd = { - .init_gtt_mem_allocation = alloc_gtt_mem, - .free_gtt_mem = free_gtt_mem, -@@ -180,7 +205,8 @@ static const struct kfd2kgd_calls kfd2kgd = { - .get_dmabuf_info = amdgpu_amdkfd_get_dmabuf_info, - .import_dmabuf = amdgpu_amdkfd_gpuvm_import_dmabuf, - .get_vm_fault_info = amdgpu_amdkfd_gpuvm_get_vm_fault_info, -- .submit_ib = amdgpu_amdkfd_submit_ib -+ .submit_ib = amdgpu_amdkfd_submit_ib, -+ .get_tile_config = amdgpu_amdkfd_get_tile_config, - }; - - struct kfd2kgd_calls *amdgpu_amdkfd_gfx_8_0_get_functions() --- -2.7.4 - |