From: Kristian Høgsberg Date: Mon, 25 Apr 2011 13:53:22 +0000 (-0400) Subject: intel: Use tiling for dri2AllocateBuffer implementation X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=5dfba09d49ccec2655e4d22ef6f46b9c67862bc9;p=mesa.git intel: Use tiling for dri2AllocateBuffer implementation --- diff --git a/src/mesa/drivers/dri/intel/intel_screen.c b/src/mesa/drivers/dri/intel/intel_screen.c index bfbfec5f93e..7de0d12beba 100644 --- a/src/mesa/drivers/dri/intel/intel_screen.c +++ b/src/mesa/drivers/dri/intel/intel_screen.c @@ -672,12 +672,21 @@ intelAllocateBuffer(__DRIscreen *screen, { struct intel_buffer *intelBuffer; struct intel_screen *intelScreen = screen->private; + uint32_t tiling; intelBuffer = CALLOC(sizeof *intelBuffer); if (intelBuffer == NULL) return NULL; - intelBuffer->region = intel_region_alloc(intelScreen, I915_TILING_NONE, + if ((attachment == __DRI_BUFFER_DEPTH || + attachment == __DRI_BUFFER_STENCIL || + attachment == __DRI_BUFFER_DEPTH_STENCIL) && + intelScreen->gen >= 4) + tiling = I915_TILING_Y; + else + tiling = I915_TILING_X; + + intelBuffer->region = intel_region_alloc(intelScreen, tiling, format / 8, width, height, GL_TRUE); if (intelBuffer->region == NULL) {