r600: enable OQ on rv740 on drms with working pipe config
authorAlex Deucher <alexdeucher@gmail.com>
Fri, 26 Feb 2010 20:24:12 +0000 (15:24 -0500)
committerAlex Deucher <alexdeucher@gmail.com>
Fri, 26 Feb 2010 20:26:51 +0000 (15:26 -0500)
src/mesa/drivers/dri/r600/r600_context.c

index f575e74c3edfcc240e39716af7dfe97682d21f1a..1a4b014d9f5a6fc68c52e3a7943e31488be8267d 100644 (file)
@@ -340,9 +340,12 @@ static void r600InitGLExtensions(GLcontext *ctx)
                _mesa_enable_extension(ctx, "GL_EXT_texture_compression_s3tc");
        }
 
-       /* XXX: RV740 only seems to report results from half of its DBs */
-       if (r600->radeon.radeonScreen->chip_family == CHIP_FAMILY_RV740)
-               _mesa_disable_extension(ctx, "GL_ARB_occlusion_query");
+       /* RV740 had a broken pipe config prior to drm 1.32 */
+       if (!r600->radeon.radeonScreen->kernel_mm) {
+               if ((r600->radeon.dri.drmMinor < 32) &&
+                   (r600->radeon.radeonScreen->chip_family == CHIP_FAMILY_RV740))
+                       _mesa_disable_extension(ctx, "GL_ARB_occlusion_query");
+       }
 }
 
 /* Create the device specific rendering context.