diff options
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_context.c | 1 | ||||
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_context.h | 2 | ||||
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_formatquery.c | 16 |
3 files changed, 15 insertions, 4 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c index c16da0d2291..378366408ae 100644 --- a/src/mesa/drivers/dri/i965/brw_context.c +++ b/src/mesa/drivers/dri/i965/brw_context.c @@ -341,7 +341,6 @@ brw_init_driver_functions(struct brw_context *brw, if (brw->gen >= 7) brw_init_conditional_render_functions(functions); - functions->QuerySamplesForFormat = brw_query_samples_for_format; functions->QueryInternalFormat = brw_query_internal_format; functions->NewTransformFeedback = brw_new_transform_feedback; diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h index 8fca80b617c..88f0d49a5ff 100644 --- a/src/mesa/drivers/dri/i965/brw_context.h +++ b/src/mesa/drivers/dri/i965/brw_context.h @@ -1876,8 +1876,6 @@ void gen7_emit_vs_workaround_flush(struct brw_context *brw); void gen7_emit_cs_stall_flush(struct brw_context *brw); /* brw_queryformat.c */ -size_t brw_query_samples_for_format(struct gl_context *ctx, GLenum target, - GLenum internalFormat, int samples[16]); void brw_query_internal_format(struct gl_context *ctx, GLenum target, GLenum internalFormat, GLenum pname, GLint *params); diff --git a/src/mesa/drivers/dri/i965/brw_formatquery.c b/src/mesa/drivers/dri/i965/brw_formatquery.c index 5ee1d69dae2..576e36fcae3 100644 --- a/src/mesa/drivers/dri/i965/brw_formatquery.c +++ b/src/mesa/drivers/dri/i965/brw_formatquery.c @@ -24,7 +24,7 @@ #include "brw_context.h" #include "main/formatquery.h" -size_t +static size_t brw_query_samples_for_format(struct gl_context *ctx, GLenum target, GLenum internalFormat, int samples[16]) { @@ -73,6 +73,20 @@ brw_query_internal_format(struct gl_context *ctx, GLenum target, assert(params != NULL); switch (pname) { + case GL_SAMPLES: + brw_query_samples_for_format(ctx, target, internalFormat, params); + break; + + case GL_NUM_SAMPLE_COUNTS: { + size_t num_samples; + GLint dummy_buffer[16]; + + num_samples = brw_query_samples_for_format(ctx, target, internalFormat, + dummy_buffer); + params[0] = (GLint) num_samples; + break; + } + default: /* By default, we call the driver hook's fallback function from the frontend, * which has generic implementation for all pnames. |