xf86-video-intel: src/sna/gen8_render.c

Chris Wilson ickle at kemper.freedesktop.org
Wed Jun 11 13:14:44 PDT 2014


 src/sna/gen8_render.c |   28 +++++++++++++++++++++-------
 1 file changed, 21 insertions(+), 7 deletions(-)

New commits:
commit abbf6d6b7962650607dc3517939991de56ce8a91
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Wed Jun 11 21:14:00 2014 +0100

    sna/gen8: Clear a couple more push constants
    
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/sna/gen8_render.c b/src/sna/gen8_render.c
index 54a67b1..466fe01 100644
--- a/src/sna/gen8_render.c
+++ b/src/sna/gen8_render.c
@@ -436,22 +436,29 @@ gen8_choose_composite_kernel(int op, bool has_mask, bool is_ca, bool is_affine)
 }
 
 static void
-gen8_emit_urb(struct sna *sna)
+gen8_emit_push_constants(struct sna *sna)
 {
 #if SIM
 	OUT_BATCH(GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_VS | (2 - 2));
-	OUT_BATCH(0 << PUSH_CONSTANT_BUFFER_OFFSET_SHIFT |
-		  0 << PUSH_CONSTANT_BUFFER_SIZE_SHIFT);
+	OUT_BATCH(0);
+
+	OUT_BATCH(GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_HS | (2 - 2));
+	OUT_BATCH(0);
+
+	OUT_BATCH(GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_DS | (2 - 2));
+	OUT_BATCH(0);
 
 	OUT_BATCH(GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_GS | (2 - 2));
-	OUT_BATCH(0 << PUSH_CONSTANT_BUFFER_OFFSET_SHIFT |
-		  0 << PUSH_CONSTANT_BUFFER_SIZE_SHIFT);
+	OUT_BATCH(0);
 
 	OUT_BATCH(GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_PS | (2 - 2));
-	OUT_BATCH(0 << PUSH_CONSTANT_BUFFER_OFFSET_SHIFT |
-		  0 << PUSH_CONSTANT_BUFFER_SIZE_SHIFT);
+	OUT_BATCH(0);
 #endif
+}
 
+static void
+gen8_emit_urb(struct sna *sna)
+{
 	/* num of VS entries must be divisible by 8 if size < 9 */
 	OUT_BATCH(GEN8_3DSTATE_URB_VS | (2 - 2));
 	OUT_BATCH(1024 << URB_ENTRY_NUMBER_SHIFT |
@@ -803,6 +810,12 @@ gen8_emit_invariant(struct sna *sna)
 {
 	OUT_BATCH(GEN8_PIPELINE_SELECT | PIPELINE_SELECT_3D);
 
+#if SIM
+	OUT_BATCH(GEN8_STATE_SIP | (3 - 2));
+	OUT_BATCH64(0);
+
+#endif
+
 	OUT_BATCH(GEN8_3DSTATE_MULTISAMPLE | (2 - 2));
 	OUT_BATCH(MULTISAMPLE_PIXEL_LOCATION_CENTER |
 		  MULTISAMPLE_NUMSAMPLES_1); /* 1 sample/pixel */
@@ -819,6 +832,7 @@ gen8_emit_invariant(struct sna *sna)
 	OUT_BATCH(0);
 #endif
 
+	gen8_emit_push_constants(sna);
 	gen8_emit_urb(sna);
 
 	gen8_emit_state_base_address(sna);


More information about the xorg-commit mailing list