diff options
Diffstat (limited to 'common/recipes-kernel/linux/files/1144-cache-rb-config-values.patch')
-rw-r--r-- | common/recipes-kernel/linux/files/1144-cache-rb-config-values.patch | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/files/1144-cache-rb-config-values.patch b/common/recipes-kernel/linux/files/1144-cache-rb-config-values.patch new file mode 100644 index 00000000..0c8fe273 --- /dev/null +++ b/common/recipes-kernel/linux/files/1144-cache-rb-config-values.patch @@ -0,0 +1,46 @@ +From 0aaf3d10e376981da3d92f037c6e36a5c4e8d348 Mon Sep 17 00:00:00 2001 +From: Sanjay R Mehta <sanju.mehta@amd.com> +Date: Tue, 6 Dec 2016 19:40:46 +0530 +Subject: [PATCH 06/10] cache rb config values +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Needed when for SR-IOV and when PG is enabled. + +Reviewed-by: Christian König <christian.koenig@amd.com> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +Signed-off-by: Sanjay R Mehta <sanju.mehta@amd.com> +--- + drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 15 +++++++++++++++ + 1 file changed, 15 insertions(+) + +diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c +index 20ac07f..479047e 100644 +--- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c ++++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c +@@ -3671,6 +3671,21 @@ static void gfx_v8_0_setup_rb(struct amdgpu_device *adev) + 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_v8_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_v8_0_select_se_sh(adev, 0xffffffff, 0xffffffff); + mutex_unlock(&adev->grbm_idx_mutex); + } + +-- +2.7.4 + |