From 03a217cb2dcebf90bb43c73667b5f3137c3b7794 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Thu, 26 Jul 2012 11:27:29 +0100 Subject: [PATCH] sna/gen7: Reduce WM thread count for IVB GT1 So we have a few reports of complete and utter failure when we use too many threads on GT1, but strangely it seems not all devices. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=52473 Signed-off-by: Chris Wilson --- src/sna/gen7_render.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/sna/gen7_render.c b/src/sna/gen7_render.c index cf56e42..f23ef4c 100644 --- a/src/sna/gen7_render.c +++ b/src/sna/gen7_render.c @@ -74,6 +74,13 @@ struct gt_info { } urb; }; +static const struct gt_info ivb_0152_info = { + .max_vs_threads = 36, + .max_gs_threads = 36, + .max_wm_threads = (42-1) << GEN7_PS_MAX_THREADS_SHIFT, + .urb = { 128, 512, 192 }, +}; + static const struct gt_info gt1_info = { .max_vs_threads = 36, .max_gs_threads = 36, @@ -4269,6 +4276,8 @@ static bool gen7_render_setup(struct sna *sna) state->info = >1_info; if (DEVICE_ID(sna->PciInfo) & 0x20) state->info = >2_info; /* XXX requires GT_MODE WiZ disabled */ + if (DEVICE_ID(sna->PciInfo) == 0x0152) + state->info = &ivb_0152_info; /* XXX */ sna_static_stream_init(&general); -- 1.7.10.4