diff options
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.patch | 70 |
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 + |