i965: Use gen7_surface_msaa_bits in Broadwell SURFACE_STATE code.
authorKenneth Graunke <kenneth@whitecape.org>
Mon, 10 Feb 2014 19:18:41 +0000 (11:18 -0800)
committerKenneth Graunke <kenneth@whitecape.org>
Wed, 19 Feb 2014 23:35:54 +0000 (15:35 -0800)
We already set the number of samples, but were missing the MSAA layout
mode.  Reusing gen7_surface_msaa_bits makes it easy to set both.

This also lets us drop the Gen8 surface_num_multisamples function.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
src/mesa/drivers/dri/i965/gen8_surface_state.c

index 22ffa78d01f9f820e8ea6815846e2dbd1274e762..594e53122c6c91cafd9c8c9c9cd3ab8102824573 100644 (file)
@@ -83,18 +83,6 @@ horizontal_alignment(struct intel_mipmap_tree *mt)
    }
 }
 
-static uint32_t
-surface_num_multisamples(unsigned num_samples)
-{
-   assert(num_samples >= 0 && num_samples <= 16);
-
-   if (num_samples == 0)
-      return GEN7_SURFACE_MULTISAMPLECOUNT_1;
-
-   /* The SURFACE_MULTISAMPLECOUNT_X enums are simply log2(num_samples) << 3. */
-   return (ffs(num_samples) - 1) << 3;
-}
-
 static void
 gen8_emit_buffer_surface_state(struct brw_context *brw,
                                uint32_t *out_offset,
@@ -180,7 +168,7 @@ gen8_update_texture_surface(struct gl_context *ctx,
    surf[3] = SET_FIELD(mt->logical_depth0 - 1, BRW_SURFACE_DEPTH) |
              (mt->region->pitch - 1);
 
-   surf[4] = surface_num_multisamples(mt->num_samples);
+   surf[4] = gen7_surface_msaa_bits(mt->num_samples, mt->msaa_layout);
 
    surf[5] = SET_FIELD(tObj->BaseLevel - mt->first_level, GEN7_SURFACE_MIN_LOD) |
              (intelObj->_MaxLevel - tObj->BaseLevel); /* mip count */
@@ -322,7 +310,7 @@ gen8_update_renderbuffer_surface(struct brw_context *brw,
    surf[3] = (depth - 1) << BRW_SURFACE_DEPTH_SHIFT |
              (region->pitch - 1); /* Surface Pitch */
 
-   surf[4] = surface_num_multisamples(mt->num_samples) |
+   surf[4] = gen7_surface_msaa_bits(mt->num_samples, mt->msaa_layout) |
              min_array_element << GEN7_SURFACE_MIN_ARRAY_ELEMENT_SHIFT |
              (depth - 1) << GEN7_SURFACE_RENDER_TARGET_VIEW_EXTENT_SHIFT;