From: Xiang, Haihao Date: Tue, 18 May 2010 04:55:51 +0000 (+0800) Subject: i965_drv_vidoe: update max_thread for rendering X-Git-Tag: android-x86-7.1-r1~863^2~6 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=b2aade854a573b7c4591b48c2befd4efdb78826c;p=android-x86%2Fhardware-intel-common-libva.git i965_drv_vidoe: update max_thread for rendering --- diff --git a/i965_drv_video/i965_render.c b/i965_drv_video/i965_render.c index 08fa582..dc53529 100644 --- a/i965_drv_video/i965_render.c +++ b/i965_drv_video/i965_render.c @@ -329,12 +329,14 @@ i965_subpic_render_wm_unit(VADriverContextP ctx) wm_state->wm4.stats_enable = 0; wm_state->wm4.sampler_state_pointer = render_state->wm.sampler->offset >> 5; - if (IS_IRONLAKE(i965->intel.device_id)) + if (IS_IRONLAKE(i965->intel.device_id)) { wm_state->wm4.sampler_count = 0; /* hardware requirement */ - else + wm_state->wm5.max_threads = 12 * 6 - 1; + } else { wm_state->wm4.sampler_count = (render_state->wm.sampler_count + 3) / 4; + wm_state->wm5.max_threads = 10 * 5 - 1; + } - wm_state->wm5.max_threads = PS_MAX_THREADS - 1; wm_state->wm5.thread_dispatch_enable = 1; wm_state->wm5.enable_16_pix = 1; wm_state->wm5.enable_8_pix = 0; @@ -392,12 +394,14 @@ i965_render_wm_unit(VADriverContextP ctx) wm_state->wm4.stats_enable = 0; wm_state->wm4.sampler_state_pointer = render_state->wm.sampler->offset >> 5; - if (IS_IRONLAKE(i965->intel.device_id)) + if (IS_IRONLAKE(i965->intel.device_id)) { wm_state->wm4.sampler_count = 0; /* hardware requirement */ - else + wm_state->wm5.max_threads = 12 * 6 - 1; + } else { wm_state->wm4.sampler_count = (render_state->wm.sampler_count + 3) / 4; + wm_state->wm5.max_threads = 10 * 5 - 1; + } - wm_state->wm5.max_threads = PS_MAX_THREADS - 1; wm_state->wm5.thread_dispatch_enable = 1; wm_state->wm5.enable_16_pix = 1; wm_state->wm5.enable_8_pix = 0;