Re: [Mesa-dev] [PATCH 07/15] i965: Mark texture formats as supported using the surface formats table.

2011-11-16 Thread Kenneth Graunke
On 11/15/2011 05:55 PM, Eric Anholt wrote:
 This is currently duplicated with intel_context.c's setup of the
 formats table, and sets true for exactly the same set of formats on
 gen6.
 ---
  src/mesa/drivers/dri/i965/brw_wm_surface_state.c |   13 -
  1 files changed, 12 insertions(+), 1 deletions(-)
 
 diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c 
 b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
 index 28a40a2..e29a1dc 100644
 --- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
 +++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
 @@ -364,6 +364,7 @@ void
  brw_init_surface_formats(struct brw_context *brw)
  {
 struct intel_context *intel = brw-intel;
 +   struct gl_context *ctx = intel-ctx;
 int gen;
 gl_format format;
  
 @@ -373,10 +374,11 @@ brw_init_surface_formats(struct brw_context *brw)
  
 for (format = MESA_FORMAT_NONE + 1; format  MESA_FORMAT_COUNT; format++) 
 {
uint32_t texture, render;
 -  const struct surface_format_info *rinfo;
 +  const struct surface_format_info *rinfo, *tinfo;
bool is_integer = _mesa_is_format_integer_color(format);
  
render = texture = brw_format_for_mesa_format(format);
 +  tinfo = surface_formats[texture];
  
/* The value of BRW_SURFACEFORMAT_R32G32B32A32_FLOAT is 0, so don't 
 skip
 * it.
 @@ -384,6 +386,9 @@ brw_init_surface_formats(struct brw_context *brw)
if (texture == 0  format != MESA_FORMAT_RGBA_FLOAT32)
continue;
  
 +  if (gen = tinfo-sampling  (gen = tinfo-filtering || is_integer))
 +  ctx-TextureFormatSupported[format] = true;
 +
/* Re-map some render target formats to make them supported when they
 * wouldn't be using their format for texturing.
 */
 @@ -434,6 +439,12 @@ brw_init_surface_formats(struct brw_context *brw)
 brw-format_supported_as_render_target[MESA_FORMAT_X8_Z24] = true;
 brw-format_supported_as_render_target[MESA_FORMAT_S8] = true;
 brw-format_supported_as_render_target[MESA_FORMAT_Z16] = true;
 +
 +   /* We remap depth formats to a supported texturing format in
 +* translate_tex_format().
 +*/
 +   ctx-TextureFormatSupported[MESA_FORMAT_S8_Z24] = true;
 +   ctx-TextureFormatSupported[MESA_FORMAT_X8_Z24] = true;
  }
  
  bool

I think we can actually support MESA_FORMAT_Z16 as well, no?  Though
enabling that should definitely be a separate patch, in case it breaks
things.  (I'm a little wary about it because the Windows team apparently
had some issues with Z16 in GLBenchmark, but they weren't sure if it was
a hardware or software issue.)
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 07/15] i965: Mark texture formats as supported using the surface formats table.

2011-11-16 Thread Kenneth Graunke
On 11/16/2011 12:52 AM, Kenneth Graunke wrote:
 On 11/15/2011 05:55 PM, Eric Anholt wrote:
 This is currently duplicated with intel_context.c's setup of the
 formats table, and sets true for exactly the same set of formats on
 gen6.
 ---
  src/mesa/drivers/dri/i965/brw_wm_surface_state.c |   13 -
  1 files changed, 12 insertions(+), 1 deletions(-)

 diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c 
 b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
 index 28a40a2..e29a1dc 100644
 --- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
 +++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
 @@ -364,6 +364,7 @@ void
  brw_init_surface_formats(struct brw_context *brw)
  {
 struct intel_context *intel = brw-intel;
 +   struct gl_context *ctx = intel-ctx;
 int gen;
 gl_format format;
  
 @@ -373,10 +374,11 @@ brw_init_surface_formats(struct brw_context *brw)
  
 for (format = MESA_FORMAT_NONE + 1; format  MESA_FORMAT_COUNT; 
 format++) {
uint32_t texture, render;
 -  const struct surface_format_info *rinfo;
 +  const struct surface_format_info *rinfo, *tinfo;
bool is_integer = _mesa_is_format_integer_color(format);
  
render = texture = brw_format_for_mesa_format(format);
 +  tinfo = surface_formats[texture];
  
/* The value of BRW_SURFACEFORMAT_R32G32B32A32_FLOAT is 0, so don't 
 skip
 * it.
 @@ -384,6 +386,9 @@ brw_init_surface_formats(struct brw_context *brw)
if (texture == 0  format != MESA_FORMAT_RGBA_FLOAT32)
   continue;
  
 +  if (gen = tinfo-sampling  (gen = tinfo-filtering || is_integer))
 + ctx-TextureFormatSupported[format] = true;
 +
/* Re-map some render target formats to make them supported when they
 * wouldn't be using their format for texturing.
 */
 @@ -434,6 +439,12 @@ brw_init_surface_formats(struct brw_context *brw)
 brw-format_supported_as_render_target[MESA_FORMAT_X8_Z24] = true;
 brw-format_supported_as_render_target[MESA_FORMAT_S8] = true;
 brw-format_supported_as_render_target[MESA_FORMAT_Z16] = true;
 +
 +   /* We remap depth formats to a supported texturing format in
 +* translate_tex_format().
 +*/
 +   ctx-TextureFormatSupported[MESA_FORMAT_S8_Z24] = true;
 +   ctx-TextureFormatSupported[MESA_FORMAT_X8_Z24] = true;
  }
  
  bool
 
 I think we can actually support MESA_FORMAT_Z16 as well, no?  Though
 enabling that should definitely be a separate patch, in case it breaks
 things.  (I'm a little wary about it because the Windows team apparently
 had some issues with Z16 in GLBenchmark, but they weren't sure if it was
 a hardware or software issue.)

Nevermind. :)  I somehow missed the other message:

[PATCH 4/4] intel: Support native Z16 depth textures (including as
renderbuffer) on i965.

Which is especially amusing since I reviewed it.  Too much email.
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev