intel: Fix up some extension string issues
authorIan Romanick <idr@freedesktop.org>
Wed, 28 Jan 2009 07:44:18 +0000 (23:44 -0800)
committerIan Romanick <ian.d.romanick@intel.com>
Thu, 29 Jan 2009 00:28:11 +0000 (16:28 -0800)
Move the remaining extension string enables to intel_extensions.c.
Make sure that GL_NV_texture_env_combine4 is not enabled on i830.

src/mesa/drivers/dri/i915/i915_context.c
src/mesa/drivers/dri/intel/intel_extensions.c

index c224c68b66024572b68f85c6f80e216d0dbad1c3..6e2d41e19ab3ce41deb49c90a6fe7310439a61bf 100644 (file)
  * Mesa's Driver Functions
  ***************************************/
 
-static const struct dri_extension i915_extensions[] = {
-   {"GL_ARB_depth_texture", NULL},
-   {"GL_ARB_fragment_program", NULL},
-   {"GL_ARB_shadow", NULL},
-   {"GL_ARB_texture_non_power_of_two", NULL},
-   {"GL_ATI_texture_env_combine3",       NULL},
-   {"GL_EXT_shadow_funcs", NULL},
-   {NULL, NULL}
-};
-
 /* Override intel default.
  */
 static void
@@ -174,9 +164,6 @@ i915CreateContext(const __GLcontextModes * mesaVis,
 
    ctx->Const.MaxDrawBuffers = 1;
 
-   driInitExtensions(ctx, i915_extensions, GL_FALSE);
-
-
    _tnl_init_vertices(ctx, ctx->Const.MaxArrayLockSize + 12,
                       36 * sizeof(GLfloat));
 
index 27d056a3b7377afe7bbb656a70a81cf4ee5605a7..28223ca1415c69a448df0b5fffaf0d29bf662760 100644 (file)
@@ -98,7 +98,6 @@ static const struct dri_extension card_extensions[] = {
    { "GL_MESA_ycbcr_texture",             NULL },
    { "GL_NV_blend_square",                NULL },
    { "GL_NV_point_sprite",                GL_NV_point_sprite_functions },
-   { "GL_NV_texture_env_combine4",        NULL },
    { "GL_NV_vertex_program",              GL_NV_vertex_program_functions },
    { "GL_NV_vertex_program1_1",           NULL },
    { "GL_SGIS_generate_mipmap",           NULL },
@@ -106,6 +105,19 @@ static const struct dri_extension card_extensions[] = {
 };
 
 
+/** i915 / i945-only extensions */
+static const struct dri_extension i915_extensions[] = {
+   { "GL_ARB_depth_texture",              NULL },
+   { "GL_ARB_fragment_program",           NULL },
+   { "GL_ARB_shadow",                     NULL },
+   { "GL_ARB_texture_non_power_of_two",   NULL },
+   { "GL_ATI_texture_env_combine3",       NULL },
+   { "GL_EXT_shadow_funcs",               NULL },
+   { "GL_NV_texture_env_combine4",        NULL },
+   { NULL,                                NULL }
+};
+
+
 /** i965-only extensions */
 static const struct dri_extension brw_extensions[] = {
    { "GL_ARB_depth_texture",              NULL },
@@ -132,6 +144,7 @@ static const struct dri_extension brw_extensions[] = {
    { "GL_EXT_vertex_array_bgra",         NULL },
    { "GL_ATI_separate_stencil",           GL_ATI_separate_stencil_functions },
    { "GL_ATI_texture_env_combine3",       NULL },
+   { "GL_NV_texture_env_combine4",        NULL },
    { NULL,                                NULL }
 };
 
@@ -169,4 +182,8 @@ intelInitExtensions(GLcontext *ctx, GLboolean enable_imaging)
 
    if (intel == NULL || IS_965(intel->intelScreen->deviceID))
       driInitExtensions(ctx, brw_extensions, GL_FALSE);
+
+   if (intel == NULL || IS_915(intel->intelScreen->deviceID)
+       || IS_945(intel->intelScreen->deviceID))
+      driInitExtensions(ctx, i915_extensions, GL_FALSE);
 }