i965: Support allocating the MCS buffer for 16x MSAA
authorNeil Roberts <neil@linux.intel.com>
Wed, 9 Sep 2015 13:38:08 +0000 (14:38 +0100)
committerNeil Roberts <neil@linux.intel.com>
Thu, 5 Nov 2015 09:33:16 +0000 (10:33 +0100)
When 16 samples are used the MCS buffer needs 64 bits per pixel.

Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
src/mesa/drivers/dri/i965/intel_mipmap_tree.c

index 0802b92502c65f81584f99c626f20dfc9079f90c..b1a7632d82faf851b8c9e40a2ca1f82517909dc6 100644 (file)
@@ -1427,6 +1427,12 @@ intel_miptree_alloc_mcs(struct brw_context *brw,
        */
       format = MESA_FORMAT_R_UINT32;
       break;
+   case 16:
+      /* 64 bits/pixel are required for MCS data when using 16x MSAA (4 bits
+       * for each sample).
+       */
+      format = MESA_FORMAT_RG_UINT32;
+      break;
    default:
       unreachable("Unrecognized sample count in intel_miptree_alloc_mcs");
    };