diff options
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2180-drm-amdgpu-gfx7-cache-raster_config-values.patch')
-rw-r--r-- | meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2180-drm-amdgpu-gfx7-cache-raster_config-values.patch | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2180-drm-amdgpu-gfx7-cache-raster_config-values.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2180-drm-amdgpu-gfx7-cache-raster_config-values.patch new file mode 100644 index 00000000..727ac0b6 --- /dev/null +++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2180-drm-amdgpu-gfx7-cache-raster_config-values.patch @@ -0,0 +1,46 @@ +From b7b631daaa918a74b46a28641e641c9bf97499a5 Mon Sep 17 00:00:00 2001 +From: Alex Deucher <alexander.deucher@amd.com> +Date: Mon, 13 Nov 2017 15:41:30 -0500 +Subject: [PATCH 2180/4131] drm/amdgpu/gfx7: cache raster_config values +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +We did this for gfx6 and 8, but somehow missed gfx7. + +Reviewed-by: Christian König <christian.koenig@amd.com> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +--- + drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 16 ++++++++++++++++ + 1 file changed, 16 insertions(+) + +diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c +index 84827a7..d78d1da 100644 +--- a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c ++++ b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c +@@ -1821,6 +1821,22 @@ static void gfx_v7_0_setup_rb(struct amdgpu_device *adev) + adev->gfx.config.backend_enable_mask, + num_rb_pipes); + } ++ ++ /* cache the values for userspace */ ++ for (i = 0; i < adev->gfx.config.max_shader_engines; i++) { ++ for (j = 0; j < adev->gfx.config.max_sh_per_se; j++) { ++ gfx_v7_0_select_se_sh(adev, i, j, 0xffffffff); ++ adev->gfx.config.rb_config[i][j].rb_backend_disable = ++ RREG32(mmCC_RB_BACKEND_DISABLE); ++ adev->gfx.config.rb_config[i][j].user_rb_backend_disable = ++ RREG32(mmGC_USER_RB_BACKEND_DISABLE); ++ adev->gfx.config.rb_config[i][j].raster_config = ++ RREG32(mmPA_SC_RASTER_CONFIG); ++ adev->gfx.config.rb_config[i][j].raster_config_1 = ++ RREG32(mmPA_SC_RASTER_CONFIG_1); ++ } ++ } ++ gfx_v7_0_select_se_sh(adev, 0xffffffff, 0xffffffff, 0xffffffff); + mutex_unlock(&adev->grbm_idx_mutex); + } + +-- +2.7.4 + |