aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amdfalconx86/recipes-kernel/linux/files/0043-yocto-amd-drm-amdgpu-set-the-gfx-config-properly-for-all-CZ-va.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amdfalconx86/recipes-kernel/linux/files/0043-yocto-amd-drm-amdgpu-set-the-gfx-config-properly-for-all-CZ-va.patch')
-rw-r--r--meta-amdfalconx86/recipes-kernel/linux/files/0043-yocto-amd-drm-amdgpu-set-the-gfx-config-properly-for-all-CZ-va.patch70
1 files changed, 70 insertions, 0 deletions
diff --git a/meta-amdfalconx86/recipes-kernel/linux/files/0043-yocto-amd-drm-amdgpu-set-the-gfx-config-properly-for-all-CZ-va.patch b/meta-amdfalconx86/recipes-kernel/linux/files/0043-yocto-amd-drm-amdgpu-set-the-gfx-config-properly-for-all-CZ-va.patch
new file mode 100644
index 00000000..003d731c
--- /dev/null
+++ b/meta-amdfalconx86/recipes-kernel/linux/files/0043-yocto-amd-drm-amdgpu-set-the-gfx-config-properly-for-all-CZ-va.patch
@@ -0,0 +1,70 @@
+From dbcbc331d82ded9315603197da3125cdfeabcb3d Mon Sep 17 00:00:00 2001
+From: Arindam Nath <arindam.nath@amd.com>
+Date: Thu, 11 Jun 2015 13:15:42 +0530
+Subject: [PATCH 1/1] drm/amdgpu: set the gfx config properly for all CZ
+ variants
+
+Need to adjust the number of CUs and RBs.
+
+v2: get proper values
+
+Reviewed-by: Samuel Li <samuel.li@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+Signed-off-by: Arindam Nath <arindam.nath@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 38 +++++++++++++++++++++++++++++++++--
+ 1 file changed, 36 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
+index a8397dd..8fc2379 100644
+--- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
++++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
+@@ -1929,9 +1929,43 @@ static void gfx_v8_0_gpu_init(struct amdgpu_device *adev)
+ case CHIP_CARRIZO:
+ adev->gfx.config.max_shader_engines = 1;
+ adev->gfx.config.max_tile_pipes = 2;
+- adev->gfx.config.max_cu_per_sh = 8;
+ adev->gfx.config.max_sh_per_se = 1;
+- adev->gfx.config.max_backends_per_se = 2;
++
++ switch (adev->pdev->revision) {
++ case 0xc4:
++ case 0x84:
++ case 0xc8:
++ case 0xcc:
++ /* B10 */
++ adev->gfx.config.max_cu_per_sh = 8;
++ adev->gfx.config.max_backends_per_se = 2;
++ break;
++ case 0xc5:
++ case 0x81:
++ case 0x85:
++ case 0xc9:
++ case 0xcd:
++ /* B8 */
++ adev->gfx.config.max_cu_per_sh = 6;
++ adev->gfx.config.max_backends_per_se = 2;
++ break;
++ case 0xc6:
++ case 0xca:
++ case 0xce:
++ /* B6 */
++ adev->gfx.config.max_cu_per_sh = 6;
++ adev->gfx.config.max_backends_per_se = 2;
++ break;
++ case 0xc7:
++ case 0x87:
++ case 0xcb:
++ default:
++ /* B4 */
++ adev->gfx.config.max_cu_per_sh = 4;
++ adev->gfx.config.max_backends_per_se = 1;
++ break;
++ }
++
+ adev->gfx.config.max_texture_channel_caches = 2;
+ adev->gfx.config.max_gprs = 256;
+ adev->gfx.config.max_gs_threads = 32;
+--
+1.9.1
+