[Mesa-dev] [PATCH] i965: handle stencil_bits parameter for MESA_FORMAT_B8G8R8X8_UNORM format.

Dawid Gan deveee at gmail.com
Mon Dec 7 14:32:53 PST 2015


This format has been added in commit:
28090b30dd6b5977de085f48c620574214b6b4ba
But it was handled in the same way as MESA_FORMAT_B8G8R8A8_UNORM format.
It was causing the screen in Supertuxkart to be darker than expected, see:
https://bugs.freedesktop.org/show_bug.cgi?id=92759

Cc: Boyan Ding <boyan.j.ding at gmail.com>
Cc: "11.0 11.1" <mesa-stable at lists.freedesktop.org>
Fixes: 28090b30dd6 "i965: Add XRGB8888 format to intel_screen_make_configs"
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92759
---
 src/mesa/drivers/dri/i965/intel_screen.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/mesa/drivers/dri/i965/intel_screen.c b/src/mesa/drivers/dri/i965/intel_screen.c
index cc90efe..75d5a65 100644
--- a/src/mesa/drivers/dri/i965/intel_screen.c
+++ b/src/mesa/drivers/dri/i965/intel_screen.c
@@ -1237,6 +1237,9 @@ intel_screen_make_configs(__DRIscreen *dri_screen)
              stencil_bits[2] = 8;
              num_depth_stencil_bits = 3;
          }
+      } else if (formats[i] == MESA_FORMAT_B8G8R8X8_UNORM) {
+         depth_bits[1] = 24;
+         stencil_bits[1] = 0;
       } else {
          depth_bits[1] = 24;
          stencil_bits[1] = 8;
@@ -1261,6 +1264,9 @@ intel_screen_make_configs(__DRIscreen *dri_screen)
       if (formats[i] == MESA_FORMAT_B5G6R5_UNORM) {
          depth_bits[0] = 16;
          stencil_bits[0] = 0;
+      } else if (formats[i] == MESA_FORMAT_B8G8R8X8_UNORM) {
+         depth_bits[0] = 24;
+         stencil_bits[0] = 0;
       } else {
          depth_bits[0] = 24;
          stencil_bits[0] = 8;
@@ -1301,6 +1307,9 @@ intel_screen_make_configs(__DRIscreen *dri_screen)
       if (formats[i] == MESA_FORMAT_B5G6R5_UNORM) {
          depth_bits[1] = 16;
          stencil_bits[1] = 0;
+      } else if (formats[i] == MESA_FORMAT_B8G8R8X8_UNORM) {
+         depth_bits[1] = 24;
+         stencil_bits[1] = 0;
       } else {
          depth_bits[1] = 24;
          stencil_bits[1] = 8;
-- 
2.5.0



More information about the mesa-dev mailing list