OSDN Git Service

radeon: r100 clean up CS packet size calc
authorDave Airlie <airlied@redhat.com>
Wed, 4 Mar 2009 12:26:44 +0000 (22:26 +1000)
committerDave Airlie <airlied@redhat.com>
Wed, 4 Mar 2009 12:26:44 +0000 (22:26 +1000)
src/mesa/drivers/dri/radeon/radeon_state_init.c

index bc4c221..8b6caf1 100644 (file)
@@ -426,10 +426,11 @@ static void ctx_emit_cs(GLcontext *ctx, struct radeon_state_atom *atom)
    }
 
    /* output the first 7 bytes of context */
+   dwords = 10;
    if (drb)
-     dwords += 2;
+     dwords += 6;
    if (rrb)
-     dwords += 2;
+     dwords += 6;
    BEGIN_BATCH_NO_AUTOSTATE(dwords);
 
    /* In the CS case we need to split this up */
@@ -453,9 +454,7 @@ static void ctx_emit_cs(GLcontext *ctx, struct radeon_state_atom *atom)
    if (rrb) {
      OUT_BATCH(CP_PACKET0(RADEON_RB3D_COLOROFFSET, 0));
      OUT_BATCH_RELOC(0, rrb->bo, 0, 0, RADEON_GEM_DOMAIN_VRAM, 0);
-   }
 
-   if (rrb) {
      OUT_BATCH(CP_PACKET0(RADEON_RB3D_COLORPITCH, 0));
      OUT_BATCH(cbpitch);
    }