diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2012-12-12 09:50:34 +0000 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2012-12-12 09:50:34 +0000 |
commit | 2dbe7d91a7f15a3a9ddad696c5088ca98898fca2 (patch) | |
tree | 7c2bd5ad1b47e652e67425090c1a6dd6c000e0d0 /src/sna/gen4_render.c | |
parent | 2502218a9340044bb660be68f059971119077e29 (diff) |
sna/gen4: Use the single-threaded SF w/a for spans as well
Fixes the flickering seen in the fishtank demo, for example.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/sna/gen4_render.c')
-rw-r--r-- | src/sna/gen4_render.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/sna/gen4_render.c b/src/sna/gen4_render.c index 873e1a4a..75b07a3c 100644 --- a/src/sna/gen4_render.c +++ b/src/sna/gen4_render.c @@ -2756,9 +2756,11 @@ gen4_render_composite_spans(struct sna *sna, tmp->base.has_component_alpha = false; tmp->base.need_magic_ca_pass = false; + tmp->base.u.gen4.sf = 1; if (tmp->base.src.is_solid) { DBG(("%s: using solid fast emitter\n", __FUNCTION__)); tmp->prim_emit = gen4_emit_composite_spans_solid; + tmp->base.u.gen4.sf = 0; } else if (tmp->base.is_affine) { DBG(("%s: using affine fast emitter\n", __FUNCTION__)); tmp->prim_emit = gen4_emit_composite_spans_affine; @@ -2771,7 +2773,6 @@ gen4_render_composite_spans(struct sna *sna, tmp->base.u.gen4.wm_kernel = WM_KERNEL_OPACITY | !tmp->base.is_affine; tmp->base.u.gen4.ve_id = 1 << 1 | tmp->base.is_affine; - tmp->base.u.gen4.sf = 0; tmp->box = gen4_render_composite_spans_box; tmp->boxes = gen4_render_composite_spans_boxes; |