xf86-video-intel: src/sna/gen2_render.c
Chris Wilson
ickle at kemper.freedesktop.org
Wed Oct 3 15:45:25 PDT 2012
src/sna/gen2_render.c | 29 +++++++++++++++++++++++++++--
1 file changed, 27 insertions(+), 2 deletions(-)
New commits:
commit 83b8669abc7415202f9e0c764de675ffbcf45dac
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Wed Oct 3 23:45:28 2012 +0100
sna/gen2: Setup invariant blend arguments
I thought these were completely specified via the LOAD_STATE_IMMEDIATE
commands we used whilst seting up the render pipeline. I was wrong.
Reported-by: Timo Kamph <timo at kamph.org>
References: https://bugs.freedesktop.org/show_bug.cgi?id=55455
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
diff --git a/src/sna/gen2_render.c b/src/sna/gen2_render.c
index d7980d4..cf3088b 100644
--- a/src/sna/gen2_render.c
+++ b/src/sna/gen2_render.c
@@ -505,6 +505,31 @@ static void gen2_emit_invariant(struct sna *sna)
BATCH(_3DSTATE_STIPPLE);
+ BATCH(_3DSTATE_MAP_BLEND_OP_CMD(0) |
+ TEXPIPE_COLOR |
+ ENABLE_TEXOUTPUT_WRT_SEL |
+ TEXOP_OUTPUT_CURRENT |
+ DISABLE_TEX_CNTRL_STAGE |
+ TEXOP_SCALE_1X |
+ TEXOP_MODIFY_PARMS | TEXOP_LAST_STAGE |
+ TEXBLENDOP_ARG1);
+ BATCH(_3DSTATE_MAP_BLEND_OP_CMD(0) |
+ TEXPIPE_ALPHA |
+ ENABLE_TEXOUTPUT_WRT_SEL |
+ TEXOP_OUTPUT_CURRENT |
+ TEXOP_SCALE_1X | TEXOP_MODIFY_PARMS |
+ TEXBLENDOP_ARG1);
+ BATCH(_3DSTATE_MAP_BLEND_ARG_CMD(0) |
+ TEXPIPE_COLOR |
+ TEXBLEND_ARG1 |
+ TEXBLENDARG_MODIFY_PARMS |
+ TEXBLENDARG_DIFFUSE);
+ BATCH(_3DSTATE_MAP_BLEND_ARG_CMD(0) |
+ TEXPIPE_ALPHA |
+ TEXBLEND_ARG1 |
+ TEXBLENDARG_MODIFY_PARMS |
+ TEXBLENDARG_DIFFUSE);
+
sna->render_state.gen2.need_invariant = false;
}
@@ -513,9 +538,9 @@ gen2_get_batch(struct sna *sna)
{
kgem_set_mode(&sna->kgem, KGEM_RENDER);
- if (!kgem_check_batch(&sna->kgem, 30+40)) {
+ if (!kgem_check_batch(&sna->kgem, 40+40)) {
DBG(("%s: flushing batch: size %d > %d\n",
- __FUNCTION__, 30+40,
+ __FUNCTION__, 40+40,
sna->kgem.surface-sna->kgem.nbatch));
kgem_submit(&sna->kgem);
_kgem_set_mode(&sna->kgem, KGEM_RENDER);
More information about the xorg-commit
mailing list