From: Greg Kroah-Hartman Date: Mon, 6 Jan 2014 17:37:13 +0000 (-0800) Subject: 3.4-stable patches X-Git-Tag: v3.4.76~47 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b86a849c1f47a090c07607ccf1e60f666298ed73;p=thirdparty%2Fkernel%2Fstable-queue.git 3.4-stable patches added patches: drm-radeon-fix-asic-gfx-values-for-scrapper-asics.patch --- diff --git a/queue-3.4/drm-radeon-fix-asic-gfx-values-for-scrapper-asics.patch b/queue-3.4/drm-radeon-fix-asic-gfx-values-for-scrapper-asics.patch new file mode 100644 index 00000000000..cc9db338f2d --- /dev/null +++ b/queue-3.4/drm-radeon-fix-asic-gfx-values-for-scrapper-asics.patch @@ -0,0 +1,74 @@ +From e2f6c88fb903e123edfd1106b0b8310d5117f774 Mon Sep 17 00:00:00 2001 +From: Alex Deucher +Date: Thu, 19 Dec 2013 19:41:46 -0500 +Subject: drm/radeon: fix asic gfx values for scrapper asics + +From: Alex Deucher + +commit e2f6c88fb903e123edfd1106b0b8310d5117f774 upstream. + +Fixes gfx corruption on certain TN/RL parts. + +bug: +https://bugs.freedesktop.org/show_bug.cgi?id=60389 + +Signed-off-by: Alex Deucher +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/radeon/ni.c | 20 ++++++++++++++++---- + 1 file changed, 16 insertions(+), 4 deletions(-) + +--- a/drivers/gpu/drm/radeon/ni.c ++++ b/drivers/gpu/drm/radeon/ni.c +@@ -672,6 +672,10 @@ static void cayman_gpu_init(struct radeo + (rdev->pdev->device == 0x999C)) { + rdev->config.cayman.max_simds_per_se = 6; + rdev->config.cayman.max_backends_per_se = 2; ++ rdev->config.cayman.max_hw_contexts = 8; ++ rdev->config.cayman.sx_max_export_size = 256; ++ rdev->config.cayman.sx_max_export_pos_size = 64; ++ rdev->config.cayman.sx_max_export_smx_size = 192; + } else if ((rdev->pdev->device == 0x9903) || + (rdev->pdev->device == 0x9904) || + (rdev->pdev->device == 0x990A) || +@@ -682,6 +686,10 @@ static void cayman_gpu_init(struct radeo + (rdev->pdev->device == 0x999D)) { + rdev->config.cayman.max_simds_per_se = 4; + rdev->config.cayman.max_backends_per_se = 2; ++ rdev->config.cayman.max_hw_contexts = 8; ++ rdev->config.cayman.sx_max_export_size = 256; ++ rdev->config.cayman.sx_max_export_pos_size = 64; ++ rdev->config.cayman.sx_max_export_smx_size = 192; + } else if ((rdev->pdev->device == 0x9919) || + (rdev->pdev->device == 0x9990) || + (rdev->pdev->device == 0x9991) || +@@ -692,9 +700,17 @@ static void cayman_gpu_init(struct radeo + (rdev->pdev->device == 0x99A0)) { + rdev->config.cayman.max_simds_per_se = 3; + rdev->config.cayman.max_backends_per_se = 1; ++ rdev->config.cayman.max_hw_contexts = 4; ++ rdev->config.cayman.sx_max_export_size = 128; ++ rdev->config.cayman.sx_max_export_pos_size = 32; ++ rdev->config.cayman.sx_max_export_smx_size = 96; + } else { + rdev->config.cayman.max_simds_per_se = 2; + rdev->config.cayman.max_backends_per_se = 1; ++ rdev->config.cayman.max_hw_contexts = 4; ++ rdev->config.cayman.sx_max_export_size = 128; ++ rdev->config.cayman.sx_max_export_pos_size = 32; ++ rdev->config.cayman.sx_max_export_smx_size = 96; + } + rdev->config.cayman.max_texture_channel_caches = 2; + rdev->config.cayman.max_gprs = 256; +@@ -702,10 +718,6 @@ static void cayman_gpu_init(struct radeo + rdev->config.cayman.max_gs_threads = 32; + rdev->config.cayman.max_stack_entries = 512; + rdev->config.cayman.sx_num_of_sets = 8; +- rdev->config.cayman.sx_max_export_size = 256; +- rdev->config.cayman.sx_max_export_pos_size = 64; +- rdev->config.cayman.sx_max_export_smx_size = 192; +- rdev->config.cayman.max_hw_contexts = 8; + rdev->config.cayman.sq_num_cf_insts = 2; + + rdev->config.cayman.sc_prim_fifo_size = 0x40; diff --git a/queue-3.4/series b/queue-3.4/series index 2c90d5f3232..ebac56d2283 100644 --- a/queue-3.4/series +++ b/queue-3.4/series @@ -16,3 +16,4 @@ ext4-check-for-overlapping-extents-in-ext4_valid_extent_entries.patch sched-rt-fix-rq-s-cpupri-leak-while-enqueue-dequeue-child-rt-entities.patch drm-edid-add-quirk-for-bpc-in-samsung-np700g7a-s01pl-notebook.patch net_dma-mark-broken.patch +drm-radeon-fix-asic-gfx-values-for-scrapper-asics.patch