diff --git a/src/mesa/drivers/dri/i965/intel_pixel_bitmap.c b/src/mesa/drivers/dri/i965/intel_pixel_bitmap.c index 5bc341bfc0a..f9d48294168 100644 --- a/src/mesa/drivers/dri/i965/intel_pixel_bitmap.c +++ b/src/mesa/drivers/dri/i965/intel_pixel_bitmap.c @@ -348,11 +348,13 @@ intelBitmap(struct gl_context * ctx, const struct gl_pixelstore_attrib *unpack, const GLubyte * pixels) { + struct brw_context *brw = brw_context(ctx); + if (!_mesa_check_conditional_render(ctx)) return; - if (do_blit_bitmap(ctx, x, y, width, height, - unpack, pixels)) + if (brw->screen->devinfo.gen < 6 && + do_blit_bitmap(ctx, x, y, width, height, unpack, pixels)) return; _mesa_meta_Bitmap(ctx, x, y, width, height, unpack, pixels); diff --git a/src/mesa/drivers/dri/i965/intel_pixel_copy.c b/src/mesa/drivers/dri/i965/intel_pixel_copy.c index 8029ffbeddc..31838cce13c 100644 --- a/src/mesa/drivers/dri/i965/intel_pixel_copy.c +++ b/src/mesa/drivers/dri/i965/intel_pixel_copy.c @@ -196,12 +196,15 @@ intelCopyPixels(struct gl_context * ctx, GLsizei width, GLsizei height, GLint destx, GLint desty, GLenum type) { + struct brw_context *brw = brw_context(ctx); + DBG("%s\n", __func__); if (!_mesa_check_conditional_render(ctx)) return; - if (do_blit_copypixels(ctx, srcx, srcy, width, height, destx, desty, type)) + if (brw->screen->devinfo.gen < 6 && + do_blit_copypixels(ctx, srcx, srcy, width, height, destx, desty, type)) return; /* this will use swrast if needed */ diff --git a/src/mesa/drivers/dri/i965/intel_pixel_draw.c b/src/mesa/drivers/dri/i965/intel_pixel_draw.c index 82dca4a2ebc..d5d1b99e69b 100644 --- a/src/mesa/drivers/dri/i965/intel_pixel_draw.c +++ b/src/mesa/drivers/dri/i965/intel_pixel_draw.c @@ -163,7 +163,8 @@ intelDrawPixels(struct gl_context * ctx, return; } - if (_mesa_is_bufferobj(unpack->BufferObj)) { + if (brw->screen->devinfo.gen < 6 && + _mesa_is_bufferobj(unpack->BufferObj)) { if (do_blit_drawpixels(ctx, x, y, width, height, format, type, unpack, pixels)) { return;